@vue/cli 和 vue-cli区别: npm 包名发生改变,vue-cli为2.x版本的脚手架,@vue/cli为3.x版本的脚手架。
1. @vue/cli、 Vue-cli 和 Vue的关系
(1)vue-cli2只能利用vue init webpack app命令初始化vue2.x的项目,
(2)vue-cli3~vue-cli4.5之间时,可以利用vue create app初始化vue2.x的项目,不能初始化vue3.x,因为vue-cli脚手架版本4.5以上对应的才是vue3
(3)vue-cli4.5以上时,可以利用vue create app自行选择初始化vue2.x或者vue3.x的项目
2. @vue/cli、 vue-cli 使用区别
2.1. vue-cli指定版本安装:
安装新的版本前,需要先把之前安装的版本卸载掉。
vue卸载:npm uninstall vue-cli -g(3.0以下版本卸载) npm uninstall -g @vue/cli(3.0以上版本卸载)
vue安装:npm install -g @vue/cli (安装的是最新版) npm install vue-cli@2.9.6 (指定版本安装【指定版本为3.0以下版本】,其中2.9.6为版本号) npm install -g @vue/cli@3.11.0(指定版本安装【指定版本为3.0以上版本】,其中3.11.0为版本号)
vue版本查看:vue -V
- vue-cli2及以下版本:
npm install vue-cli -g
- vue-cli3/cli4及以上版本:
npm install -g @vue/cli
2.2 创建新项目
- vue-cli2创建项目:
vue init webpack vue_cli_2.0
- vue-cli3/cli4创建项目:
vue create vue_cli_3.0
或通过视图创建项目:
vue ui
2.3. 启动项目
- vue-cli2启动项目:
npm run dev
- vue-cli3/cli4启动项目:
npm run serve
3. @vue/cli、 vue-cli项目结构
3.1. vue-cli2
|-- build // 项目构建(webpack)相关代码
| |-- build.js // 生产环境构建代码
| |-- check-version.js // 检查node、npm等版本
| |-- utils.js // 构建工具相关
| |-- vue-loader.conf.js // webpack loader配置
| |-- webpack.base.conf.js // webpack基础配置
| |-- webpack.dev.conf.js // webpack开发环境配置,构建开发本地服务器
| |-- webpack.prod.conf.js // webpack生产环境配置
|-- config // 项目开发环境配置
| |-- dev.env.js // 开发环境变量
| |-- index.js // 项目一些配置变量
| |-- prod.env.js // 生产环境变量
|-- src // 源码目录
| |-- components // vue公共组件
| |-- router // vue的路由管理
| |-- App.vue // 页面入口文件
| |-- main.js // 程序入口文件,加载各种公共组件
|-- static // 静态文件,比如一些图片,json数据等
|-- .babelrc // ES6语法编译配置
|-- .editorconfig // 定义代码格式
|-- .gitignore // git上传需要忽略的文件格式
|-- .postcsssrc // postcss配置文件
|-- README.md // 项目说明
|-- index.html // 入口页面
|-- package.json // 项目基本信息,包依赖信息等
推荐阅读:vue-cli项目结构详解
3.2. vue-cli3/cli4及以上
vue-cli3/cli4中移除了配置文件目录:config 和 build 文件夹。
同时移除了 static 静态文件夹,新增了 public 文件夹,将 index.html 移动到 public 中。
|-- src // 源码目录
| |-- components // vue公共组件
| |-- router // vue的路由管理
| |-- App.vue // 页面入口文件
| |-- main.js // 程序入口文件,加载各种公共组件
|-- public // 静态文件,比如一些图片,json数据等
| |-- favicon.ico // 图标文件
| |-- index.html // 入口页面
|-- vue.config.js // 是一个可选的配置文件,包含了大部分的vue项目配置
|-- .babelrc // ES6语法编译配置
|-- .editorconfig // 定义代码格式
|-- .gitignore // git上传需要忽略的文件格式
|-- .postcsssrc // postcss配置文件
|-- README.md // 项目说明
|-- package.json // 项目基本信息,包依赖信息等