一篇文章说清 webpack、vite、vue-cli、create-vue 的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一篇文章说清 webpack、vite、vue-cli、create-vue 的区别相关的知识,希望对你有一定的参考价值。
参考技术A 先看这个表格:是不是有了一个整体的感觉?我们再来详细的看一下。
官网: https://cli.vuejs.org/zh/index.html
vue-cli 是 Vue 早期推出的一款脚手架,使用 webpack 创建 Vue 项目,可以选择安装需要的各种插件,比如 Vuex、VueRouter等。
vue-cli 用于创建 vue2 的项目;
@vue/cli 用于创建 vue3 的项目,当然也支持 vue2。
使用起来还是比较繁琐的,首先要安装脚手架,然后使用 vue create hello-world 创建项目,具体的就不介绍了。
官网: https://staging-cn.vuejs.org/guide/quick-start.html#with-build-tools
create-vue 是 Vue3 的专用脚手架,使用 vite 创建 Vue3 的项目,也可以选择安装需要的各种插件,使用更简单。
然后我们可以选择需要的各种插件:
官网: https://cn.vitejs.dev/
使用 vite 不仅可以创建 vue 的项目,而且可以创建 react 等项目,只是需要手动安装第三方插件,有点麻烦。
目前支持的模板预设如下:
官网: https://rollupjs.org/guide/en/
rollup 是一种打包工具,特点就是,打的包非常精简,体积小。
官网是英文的,中文资料也比较少,不过好在常规用法可以参考 vite的官网。
尤雨溪在知乎的一次回答( https://www.zhihu.com/question/477139054/answer/2156019180 )里提到:
webpack 是一个全能选手,啥都能干,只是有点复杂,对新手不太友好。
Rollup 是后起之秀,打包更简洁。
vite 把 rollup 变成了“开袋即食”,便于新手入门。
create-vue 基本取代了 vue-cli,除非你想创建 vue2 的项目。
所以,想创建一个 vue3 的项目,首选 create-vue,非常方便快捷,建立的项目也可以统一风格。
vite创建项目,cra创建项目,vue-cli创建项目
各脚手架区别
各脚手架区别
vite | create-react-app | vue-cli | |
---|---|---|---|
适用 | react/vue都可用 | 只适用于react | 只适用于vue |
基于 | 基于rollup打包 | 基于webpack打包 | 基于webpack打包 |
创建项目 | npm create vite@latest 项目名称 | npx create-react-app 项目名称 --template typescript | vue create 项目名称 |
修改配置 | 在vite.config.js/ts修改 | 三种方式,具体看下文 | 在vue.config.js修改 |
预编译器 | 只用引入sass/less,不用管loader,很方便 | 默认配置了sass,无less | sass/less都需要自己安装 |
svg封装 | vite-plugin-svg-icons(主要就是rollup没有loader一说) | svg-sprite-loader | svg-sprite-loader |
vite脚手架
基于rollup打包,vue、react都可以通用。很方便,预计会成为一种趋势 (但是作为micro-app微前端的子应用,现在问题还很多)
create-react-app脚手架
方式一:
git操作:到 commit 这个步骤
npm eject :解析所有webpack配置
发现缺点:webpack无关依赖太多太杂,config配置太杂,而且解包后不可逆。(所以不推荐。只能作为参考)
方式二:
安装依赖:react-app-rewired customize-cra
根路径:创建config-overrides.js文件
修改打包命令:react-scripts 改为 react-app-rewired
修改具体配置:使用customize-cra中提供的对应修改方法
发现缺陷:起别名时,大部分组件导入没问题,部分组件导入居然会报错。会覆盖配置,
比如自带的less需要重新配置,而且按他的方式配置居然会报错。(所以不推荐。各种报错花里胡哨)
方式三:
安装依赖:@craco/craco
根路径:创建craco.config.js文件
修改打包命令:react-scripts 改为 craco
修改具体配置:使用craco中提供的对应修改方法
发现缺陷:会覆盖配置(推荐!!!)
具体配置官网: https://craco.js.org/docs/configuration/getting-started/
vue-cli脚手架
基于webpack,vue2 vue3都能用,vue2一般都用vue-cli
以上是关于一篇文章说清 webpack、vite、vue-cli、create-vue 的区别的主要内容,如果未能解决你的问题,请参考以下文章