前言
要说vue-cli脚手架的实际意义,可能没有多少,因为构建项目的方式有很多,甚至可以直接复制下载别的项目便可作为项目模板进行后续使用即可,但是使用脚手架去进行自动化构建是一个熟悉vue开发的过程,也就是一个学习过程。
vue-cli就是Vue的脚手架工具,和我们在日常生活中看到的脚手架意义上是一回事,它帮助我们搭建基本的开发环境,好比架子搭建好了,利用它可以搞定目录结构,本地调试,单元测试,热加载及代码部署等,我们只关注开发就可以了。
vue-cli安装
1、使用npm(需要安装node环境,直接进入官网下载安装即可https://nodejs.org/en/)全局安装webpack,打开命令行工具输入:
npm install webpack -g
注意:webpack 4.X 开始,需要安装 webpack-cli 依赖 ,所以需要使用如下这条命令,安装过程如下:
npm install webpack webpack-cli -g
安装完成之后输入webpack -v,如下图,如果出现相应的版本号,则说明安装成功。
2、全局安装vue-cli,在cmd中输入命令:
npm install --global vue-cli
安装完成之后输入 vue -V(大写的“V”),如下图,如果出现相应的版本号,则说明安装成功。
打开C:\Users\Andminster\AppData\Roaming\npm目录下可以看到均安装成功:
打开node_modules也可以看到vue-cli:
利用vue-cli构建项目
1、首先在本地新建一个文件夹(test_vue)作为项目存放地:
然后使用命令行cd进入到项目目录并输入:
vue init webpack learn_vue_cli
输入命令后,会跳出几个选项需要回答:
- Project name (learn_vue_cli): -----项目名称,直接回车,按照括号中默认名字(注意这里的名字不能有大写字母,如果有会报错Sorry, name can no longer contain capital letters)。
- Project description (A Vue.js project): ----项目描述,也可直接点击回车,使用默认名字。
- Author (): ----作者,输入你的大名,也可以直接回车。
接下来会让用户选择: - Runtime + Compiler: recommended for most users 运行加编译,直接回车即可。
- Install vue-router? (Y/n) 是否安装vue-router,这是官方的路由,大多数情况下都使用,这里就输入“y”后回车即可。
- Use ESLint to lint your code? (Y/n) 是否使用ESLint管理代码,ESLint是个代码风格管理工具,是用来统一代码风格的,一般项目中都会使用。
- Pick an ESLint preset (Use arrow keys) 选择一个ESLint预设,编写vue项目时的代码风格,直接y回车。
- Setup unit tests ? (Y/n) 是否安装单元测试,选择安装y回车。
- Pick a test runner? 直接回车即可。
- Setup e2e tests with Nightwatch(Y/n)? 是否安装e2e测试 ,选择安装y回车。
- Should we run 'npm install' for you after the project has been created?直接回车即可。
回答完毕上面问题后就开始自动化构建项目了。命令执行完成之后,会在当前目录生成一个以该名称命名的项目文件夹。
自动化构建完成:
生成的项目文件如下:
每个文件夹代表的意思:
2、构建完成后,可以看到目录下多出了一个项目文件夹learn_vue_cli,然后cd进入这个文件夹,安装依赖(上一个步骤中可以看到,其实依赖项已经被安装好了):
npm install
备注:npm install 是安装所有的模块,如果是安装具体的哪个个模块,在install 后面输入模块的名字即可。而只输入install就会按照项目的根目录下的package.json文件中依赖的模块安装,每个使用npm管理的项目都有这个文件,是npm操作的入口文件。因为是初始项目,还没有任何模块,所以我用npm install 安装所有的模块。安装完成后,目录中会多出来一个node_modules文件夹,这里放的就是所有依赖的模块。
启动项目
1、进入项目文件夹,运行如下代码启动项目:
npm run dev
项目启动成功,显示如下,同时在浏览器中输入localhost:8080进入Vue欢迎页面:
如果浏览器打开之后,没有加载出页面,有可能是本地的 8080 端口被占用,需要修改一下配置文件 config里的index.js即可:
2、vue-cli的webpack配置分析
- 从
package.json
可以看到开发和生产环境的入口。 - 可以看到dev中的设置,build/webpack.dev.conf.js,该文件是开发环境中webpack的配置入口。
- 在webpack.dev.conf.js中出现webpack.base.conf.js,这个文件是开发环境、生产环境和测试环境,这些环境的公共webpack配置,这个文件相当重要。
打包上线
项目文件都需要放到 src 文件夹下:
在项目开发完成之后,可以输入 npm run build
来进行打包工作:
打包完成后,会生成 dist 文件夹:
项目上线时,只需要将 dist 文件夹放到服务器就行了。可以看到打包完成之后的Tip显示:打包的HTML打开是没用的,打包之后需要上传到服务器运行。