Vue3中Vite和Vue-cli的特点与区别详解

 更新时间:2022年12月28日 14:54:29   作者:清风 与我  
vue-cli是Vue早期推出的一款脚手架,使用webpack创建Vue项目,可以选择安装需要的各种插件,比如Vuex、VueRouter,下面这篇文章主要给大家介绍了关于Vue3中Vite和Vue-cli的特点与区别的相关资料,需要的朋友可以参考下

1. 创建3.0项目

vue-cli : 安装并执行 npm init vue@latest

选择项目功能时: 除了第一项的项目名字外,其他可以暂时No

cd title
npm install
npm run dev :运行
npm run build: 打包 (生成一个dist文件夹)

vite: 使用vite 体验更快速

npm init vite-app title
cd title
npm install
npm run dev

title 代表创建 Vue3 项目的文件夹名称

Vite 与 Vue-cli 是什么?

Vue-cli 的特点:

是Vue2.0最棒的前端构建工具,是WebPack的超集

Vue-cli 基于WebPack构建,配置好了打包规则

内置了热模块重载的开发服务器

有丰富的官方插件合集,站在webpack庞大的社区资源上

友好的图形化创建和管理Vue项目界面 : vue ui

vue-cli在(前端)服务启动之前,要把所有代码打包成Bundle再启动服务,这也是为什么一个些大型项目 启动时,特别慢的原因。这一点在Vite做了大幅度改善。

Vite 的特点:

Vite是Vue团队开发的新一代前端开发与构建工具,vite不是基于webpack,

它为了解决项目启动慢的问题,vite通过一开始将应用中的模块分为依赖和源码两类,改进了开发服务器的启动慢的特点;

依赖: 大多为在开发时,不会变动的纯js,一些较大的依赖(例如有上百个模块的组件库:element-ui) ,处理的代价很高。依赖通常会存在多种模块化的格式.vite会使用esbuild预构建依赖,esbuld使用Go编写,并且比 js编写的打包器,速度快10-100倍;

源码: 通常包含一些并非直接是js的文件,需要转换,时常被编译。同时,并不是所有的源码都需要同时被加载。(例如:基于路由拆分的代码模块)。

以上: 这就是为什么vite启动快的原因;

Vite 和 Vue-cli的区别:

  1. vite是基于原生Es6 Modules,在生产环境下打包使用的Rollup;
  2. vue-cli基于webpack封装,生产环境和开发环境都是基于webpack打包;
  3. 所以两者在生产环境都是基于源代码的文件打包。
  4. 在开发环境中,Vite是基于原生的es6,无需对代码进行打包,浏览器可以直接调用,所以说vite因为基于浏览器的原生功能,省掉了打包过程,在开发环境中体验极好;
  5. vite会取代vue-cli吗? 尤雨溪(Evan You)在Twitter上说:
    ​ 起初我不确定,但在这个阶段,我相信最终会是这样。

总结:

以上就是 vue3 中Vite 和 Vue-cli的特点和区别。

到此这篇关于Vue3中Vite和Vue-cli的特点与区别的文章就介绍到这了,更多相关Vue3 Vite和Vue-cli区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue watch普通监听和深度监听实例详解(数组和对象)

    vue watch普通监听和深度监听实例详解(数组和对象)

    这篇文章主要介绍了vue watch普通监听和深度监听(数组和对象),文中单独通过代码给大家介绍了vue watch 深度监听的方法,感兴趣的朋友一起看看吧
    2018-08-08
  • Vue.js 实现微信公众号菜单编辑器功能(一)

    Vue.js 实现微信公众号菜单编辑器功能(一)

    最近vue.js 非常火热,小编也趁机学习了下vuejs的一些基础知识,于是尝试做一个像微信平台里的菜单编辑器功能,下面脚本之家小编把vue.js 微信公众号菜单编辑器功能的实现代码分享给大家,需要的朋友参考下
    2018-05-05
  • Vue3如何通过ESLint校验代码是否符合规范详解

    Vue3如何通过ESLint校验代码是否符合规范详解

    ESLint可以灵活设置规则,也发布了很多公开的规则集,下面这篇文章主要给大家介绍了关于Vue3如何通过ESLint校验代码是否符合规范的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • vue自定义全局组件实现弹框案例

    vue自定义全局组件实现弹框案例

    这篇文章主要为大家详细介绍了vue自定义全局组件实现弹框案例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • vue + canvas实现涂鸦面板的示例代码

    vue + canvas实现涂鸦面板的示例代码

    这篇文章主要给大家介绍了vue + canvas实现涂鸦面板的示例,文章通过代码示例介绍的非常详细,感兴趣的小伙伴跟着小编一起来看看吧
    2023-08-08
  • Vue获取初始化数据是放在created还是mounted解读

    Vue获取初始化数据是放在created还是mounted解读

    这篇文章主要介绍了Vue获取初始化数据是放在created还是mounted的问题解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • VUE微信H5生成二维码海报保存在本地相册的实现

    VUE微信H5生成二维码海报保存在本地相册的实现

    本文主要介绍了VUE微信H5生成二维码海报保存在本地相册的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • 使用use注册Vue全局组件和全局指令的方法

    使用use注册Vue全局组件和全局指令的方法

    下面小编就为大家分享一篇使用use注册Vue全局组件和全局指令的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • Vue中对拿到的数据进行A-Z排序的实例

    Vue中对拿到的数据进行A-Z排序的实例

    今天小编就为大家分享一篇Vue中对拿到的数据进行A-Z排序的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Vue数据驱动模拟实现3

    Vue数据驱动模拟实现3

    这篇文章主要为大家详细介绍了Vue数据驱动模拟实现,教大家如何在某个对象中,新增某个属性,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01

最新评论