什么是nodejs? 简单的说 Node.js 就是运行在服务端的 JavaScript。
为什么要安装nodejs?
安装vue需要使用npm,而npm依赖于node.js(当然,安装vue也可以使用其他方法,但是都不如npm简单实用);另外node还可以帮助vue做到:打包部署(webpack),解析vue单文件组件,解析每个vue模块,拼在一起,转码es6,less等,启动测试服务器localhost8080, 帮你管理 vue-router,vue-resource这些插件等等。
好了不多说了,具体安装node.js可以参考:Node.js安装详细步骤教程(Windows版)
使用npm安装vue,其中g是global,全局的意思。
npm install vue-cli -g
如果速度慢,有两种方法可以改善:
# 安装cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org
# 使用cnpm安装vue-cli
cnpm install vue-cli -g
#下载时指定源
npm --registry=https://registry.npm.taobao.org install
# 配置源为淘宝仓库
npm config set registry https://registry.npm.taobao.org
如果已经安装了旧版本,想要安装新版本,需要先卸载旧版本才能安装新版,卸载命令:
npm uninstall vue-cli -g
为什么要全局安装?
没有全局安装vue-cli,在项目里配置 了vue.config.js,这个配置是不起作用的。直接运行npm run dev,会默认调起服务,端口号是8080;而全局安装了vue-cli,则能使用上vue.config.js。
在你要创建项目的目录下,打开cmd,输入如下命令,开始创建hello-world项目:
vue create hello-world
提示你使用npm创建似乎比较慢,是否使用cnpm更快地创建(这个要先按照上面安装好cnpm才有这个提示),我选择是。
三种创建方式:
我选择第三项,自定义(通过上下键来选择)。
如果选择前两项,只需要静静等待 vue 初始化项目即可。
vue-cli 内置支持了8个功能特性,可以多选:使用方向键在特性选项之间切换,使用空格键选中当前特性,使用 a 键切换选择所有,使用 i 键翻转选项。
对于每一项的功能,此处做个简单描述:
注意:后面的配置选项会根据你这里的选择不同而略有不同。
根据自己的需要进行配置,我的选择如下:
点击回车,进行下一项:
选择vue版本,这里选择vue3版本。
接下来会出现如下图所示,一系列创建选项让你选择:
OK,静静等待初始化完成即可。
完成后,就可以看到项目根目录下多出一个hello-world项目。
使用vue初始化基于webpack的新项目:
vue init webpack my-project
如果执行出现问题:
如上图所示,按照提示执行”npm i -g @Vue/cli-init“即可,执行创建命令后,接下来要输入一系列创建选项:
整个执行结果图片如下:
OK,接下来要自己安装一些依赖包:
# 进入项目根目录
cd my-progect
# 使用cnpm安装
cnpm i
OK,等待安装结束,项目已经初始化完毕。
在创建项目的目录打开cmd,运行如下命令:
vue ui
运行后,会自动打开浏览器,出现如下界面:
选择创建,然后点击创建新项目:
填写项目名称,去掉git覆盖选项:
选择手动配置:
这个和前两种方法一致选择自己想要的属性,下面是我的选择:
选择vue版本,这里选择3版本:
是否将配置项保存,不选择直接创建项目:
一套流程走下来,其实本质和上面两种方法内容是一致的,只不过是方法不同而已。
OK,创建完成后,会生成对应的项目仪表盘:
在仪表盘中,都可以手动添加依赖、插件,手动启动项目等等,非常方便。
启动项目:
# 进入项目目录
cd hello-world
# 运行项目
npm run serve
仪表盘运行:
启动后,打开网址:http://localhost:8080/,生成页面:
在开发完项目之后,就应该打包上线了。 vue-cli 也提供了打包的命令,在项目根目录下执行:
npm run build
执行完之后,可以看到在项目根目录下多出了一个 dist 目录,该目录下就是打包好的所有静态资源,直接部署到静态资源服务器就好了。
实际上,在部署的时候要注意,假设静态服务器的域名是 http://static.baidu.com ,那么对应到访问 <项目根目录>/dist/index.html 的 URL 一定要是 http://static.baidu.com/index.html ,其他的静态资源以此类推。
执行命令:
npm run test