vue cli 脚手架
介绍
vue cli是一个脚手架,用于快速搭建一个vue项目并且配置好使用的插件等,核心是基于插件等插件化架构
-
通过
@vue/cli实现的交互式的项目脚手架。 -
通过
@vue/cli+@vue/cli-service-global实现的零配置原型开发。 -
一个运行时依赖 (
@vue/cli-service),该依赖:- 可升级;
- 基于 webpack 构建,并带有合理的默认配置;
- 可以通过项目内的配置文件进行配置;
- 可以通过插件进行扩展。
-
一个丰富的官方插件集合,集成了前端生态中最好的工具。
-
一套完全图形化的创建和管理 Vue.js 项目的用户界面 Vue CLI 致力于将 Vue 生态中的工具基础标准化。它确保了各种构建工具能够基于智能的默认配置即可平稳衔接,这样你可以专注在撰写应用上,而不必花好几天去纠结配置的问题。与此同时,它也为每个工具提供了调整配置的灵活性,无需 eject
系统组件
vue cli 包含几个独立的部分,这部分内容在源码中可以体现出来,后续会写一篇其源码的研究文章
CLI
CLI (@vue/cli) 是一个全局安装的 npm 包,提供了终端里的 vue 命令。它可以通过 vue create 快速搭建一个新项目,或者直接通过 vue serve 构建新想法的原型。你也可以通过 vue ui 通过一套图形化界面管理你的所有项目
CLI服务
CLI 服务 (@vue/cli-service) 是一个开发环境依赖。它是一个 npm 包,局部安装在每个 @vue/cli 创建的项目中。
CLI 服务是构建于 webpack 和 webpack-dev-server 之上的。它包含了:
- 加载其它 CLI 插件的核心服务;
- 一个针对绝大部分应用优化过的内部的 webpack 配置;
- 项目内部的
vue-cli-service命令,提供serve、build和inspect命令
CLI插件
CLI 插件是向你的 Vue 项目提供可选功能的 npm 包,例如 Babel/TypeScript 转译、ESLint 集成、单元测试和 end-to-end 测试等。Vue CLI 插件的名字以 @vue/cli-plugin- (内建插件) 或 vue-cli-plugin- (社区插件) 开头,非常容易使用。
当你在项目内部运行 vue-cli-service 命令时,它会自动解析并加载 package.json 中列出的所有 CLI 插件
安装
可以使用任意一下命令来安装vue cli
npm install -g @vue/cli
//OR
yarn global add @vue/cli
安装完成后你可以通过一下命令来查看版本
vue --version
创建一个项目
你可以通过命令行方式创建项目,也可以通过vue ui来进行创建项目,本文只介绍通过命令行创建项目的基础操作
你可以运行一下命令创建一个项目
vue create 项目名
运行之后会让你进行选择
前2个是系统按默认配置给你快速创建一个vue项目,当然你也可以通过选择第三个,手动的去选择安装配置那些插件
我们详解一下选择第三个之后的操作,
此时我们会进入到一个选择工具的选项
- Choose Vue version -----选择vue版本
- Babel -----babel插件
- TypeScript ------ts
- Progressive Web App (PWA) Support-----渐进式应用
- Router-----路由
- Vuex-----状态管理工具
- CSS Pre-processors------css预编译
- Linter / Formatter -------代码验证方式
- Unit Testing-----单元测试
- E2E Testing-----黑盒测试
选择对应的选项后,会进入选择vue版本(如果你上一杯有选择这个选项)
根据图中可知后面会对之前的选项进行一个详细的选择功能
之后我们会进入下面这个界面
选择是否使用类语法来创建组件实例
也就是说我们之前是home = new vue(),用了这个语法后会变成class home extends Vue{}
是否使用Babel与TypeScript一起用于自动检测的填充?
是否使用history来配置路由
选择css预编译工具,这里的scss分2种,一般我们都是使用dart-sass,官网也是用这个
选择使用的代码校验原则
- ESLint with error prevention only----只进行报错提醒,(如果还没熟悉eslint,推荐使用此模式)
- ESLint + Airbnb config----不严谨模式
- ESLint + Standard config----正常模式
- ESLint + Prettier------严格模式
- TSLint (deprecated)------ts格式验证工具
注意我们选择了eslint,不会有ts的格式验证,可以另外装一个插件进行ts格式验证,适用于js和ts都有的项目
然后是选择校验时间,选择第一个在保存时校验,第二个是fix和commit提交时校验
选择代码保存位置,一个是独立文件保存,一个是放在package.json
是否在以后项目使用以上配置?
到此一个vue项目就搭建完成了
安装插件
我们可以通过一下命令来安装我们需要的插件,当然插件的安装还是要以插件官方readme为主
vue add 插件名
这个命令其实是一个语法糖,将插件解析为完整的包名 @vue/cli-plugin-插件名,然后从 npm 安装它,调用它的生成器。