@vue/cli 跟 vue-cli 相比,@vue/cli 的优势在哪?

一、Vue CLi的初衷

Vue-cli: 开箱即用,但强制性强,需要按照它的规则进行

Vue CLI:开箱即用,简单易用

二、为什么要对 Vue-cli 进行修改

旧版本的 Vue-cli 本质上只是从 GitHub 拉取模版,它就像一个模版拷贝器, 这样的拉取模版的方式有几个问题

1、单个模版之间相互依赖,耦合性太高,无法实现共享功能和互相迁移,使得模版本身变得及其复杂和难以维护

2.  webpack 配置和构建包含在仓库内,如 webpack 被改动,则会影响其他关联的插件

三、解决Vue-cli问题:

1. 依赖 vue-service:

CLI3 将Webpack的配置和逻辑全部封装在依赖中,同时允许用户通过 Vue.config.js 配置进行修改 Webpack,

好处是:CLI 3 更新后,并不会影响到其他插件,此时我们只需要专注与功能,底层的配置只需要交给 Vue 团队去进行维护即可。

2. 插件化:

   CLI3 通过插件的形式去支持多个不同的功能,一个插件对应一个功能,比如(router, TS, Test), 这样避免了多个模版,使得 CLi 自身的可维护性得到提升,同时支持第三方插件。

四、总结:

  VueCLI React
快速原型开发 支持 -
全局模式 通过 @vue/cli + @vue/cli-service-global 实现的零配置原型开发。 -
插件 支持,提供可选功能的 npm 包 -
扩展性

可以通过插件进行扩展

强约定, 无法配置 webpack,可以 eject
适用范围 通过扩展可以支持任意前端框架 针对 React 开发,不支持其他框架
编译速度 cache-loader,thread-loader 来加速 JS 和 TS 编译 babel-loader 开启了 cache
可升级性 依赖 (@vue/cli-service),该依赖可升级,升级后,webpack会跟随着升级 支持
多页面 支持 -
GUI

支持,一套完全图形化的创建和管理 Vue.js 项目的用户界面。

-

五、参考 VueCLI 的文档

六、文献:

1. Vue作者尤雨溪:Vue CLI 3.0重构的原因

2. 为什么使用vue-cli脚手架?vue-cli3.0的优势在哪里?

原文地址:https://www.cnblogs.com/gqx-html/p/14663133.html