搜索
首页web前端Vue.js深入研究Vue CLI3

深入研究Vue CLI3

Oct 05, 2020 pm 04:07 PM
vue clivue.js

深入研究Vue CLI3

Vue CLI是一个简单而强大的工具,用于搭建Vue.js项目。它可以确保各种构建工具与合理的默认设置一起顺利运行,因此您可以专注于编写应用程序,而不必花时间在配置上进行斗争。

Vue CLI 3是目前为止Vue生态系统中发生的最好事情,原因如下:

1、基于插件的架构

新的CLI实现了我们所谓的基于插件的体系结构,这是对以前使用基于模板的体系结构的版本的重大改进。

这意味着,现在只有一个模板,您需要的所有其他功能都将作为插件添加。

2、灵活性

新的CLI使超级容易地开始一个新项目,而不必考虑将来可能需要的所有功能。

您可以创建项目,直接进行编码,然后在需要功能时,只需添加即可!

3、Zero-config快速原型

这样,您就可以像处理html文件一样来提供vue应用或组件。

4、Vuex

新的CLI允许您将vuex添加到项目中,就像在以前版本中添加vue路由器一样。

5、Typescript

现在正式的cli支持引导typescript vue.js应用程序

6、自定义插件

如果还不够完善的CLI官方插件,则可以创建您自己的自定义插件(当然,还可以发布您的插件,以便其他人可以使用它们)。

安装Vue CLI 3

要安装CLI,请运行以下代码。

npm install -g @vue/cli

这将安装最新版本的Vue CLI。 完成后,您可以通过运行以下命令确认已安装的版本:

vue -V

更改CLI命令

与以前的版本相比,CLI命令略有变化,并且新命令已添加到好东西包中。

  • vue create myproject创建一个名为myproject的新项目。

  • vue serve 以零配置在开发模式下提供.js或.vue文件。

  • vue build 使用零配置从.js或.vue文件构建生产就绪的捆绑包。

  • vue invoke <pluginname></pluginname>调用已安装的插件生成器以创建插件正常工作所需的文件。

  • vue inspect会显示应用程序的webpack配置,因为它已被完全抽象。

  • Vue init是为仍希望使用旧版本2的用户保留的,但要使用此命令,您必须安装一个全局网桥

为此,请在终端中运行以下代码。

npm install -g @vue/cli-init

安装完成后。 现在,您随时可以在版本3中直接开始使用版本2。

vue init webpack newapp

创建一个新项目

要创建一个新项目,请在您的终端中运行以下代码

vue create projectname

其中projectname是要创建的应用程序的名称。

系统将提示您选择一个预设,默认预设(包含babel&eslint配置)或手动选择所需的功能。

如果选择默认预设,则CLI将创建您的项目并安装必要的插件以使其启动并运行。

如果您选择手动选择功能,则CLI会继续向您显示所有受支持的插件,并要求您选择要添加到项目中的插件。

若要选择,请使用键盘上的空格键或A键选择所有插件。

完成后,按Enter键继续。

根据选择的插件的不同,还会显示其他提示,只需选择所需的内容,然后按Enter键,然后让CLI完成即可。

新的CLI的一项很酷的功能是,创建的项目还会自动在计算机上为您的项目创建一个新的存储库。

插件支持开箱即用

  1. Typescript @vue/typescript

  2. 渐进式Web应用程序(PWA)@vue/pwa

  3. Vue Router

  4. Vuex

  5. CSS预处理器(postcss,css模块,sass,less和stylus)

  6. Linter / Formatters @vue/eslint

  7. 单元测试 @ vue / mocha@ vue / jest

  8. E2E测试@ vue / cypress@ vue / nightwatch

预设值

在使用CLI创建新项目并手动选择功能时,会创建一个预设。

CLI使用此创建的预设来创建项目文件。

它使用JSON编写,包含创建新应用时选择的所有功能。

预设可以重复使用,从而使您可以轻松地直接跳入应用程序,而无需在创建将来的应用程序时经历整个功能选择过程。

要使用CLI从先前保存的预设创建新项目,请将目录更改为预设的位置,然后运行以下代码

vue create -p presetname newproject

这将使用指定的预设文件来创建名为newproject的项目名称。

将CLI插件添加到现有项目

要将插件添加到已创建的项目中,只需运行以下命令

vue add @vue/pwa

其中@ vue / pwa是要添加的插件的名称,在这种情况下为Progressive Web App插件。

需要注意的一件事是,新的CLI现在接受软件包的简写名称,例如@ vue / pwa是CLI软件包@ vue / cli-plugin-pwa的简写。

CLI将名称@ vue / value解析为@ vue / cli-plugin-value以安装软件包。

Zero-config快速原型

新的CLI使得使用vue servevue build命令以开发或生产模式仅提供.vue或.js文件变得非常容易。

如果您只想测试自己的想法,而又不想打扰配置,那么这是完美的选择。

要使用此命令,您必须首先安装vue CLI全局服务。

为此,只需在您的终端中运行以下代码。

npm install -g @vue/cli-service-global

安装完成后,您可以使用vue servevue build

服务视图

vue serve app.vue

其中app.vue是要提供服务的组件或文件的名称。

serve命令还提供了一个选项,可以在运行完命令后启动浏览器,而不仅仅是向您显示当前正在向其提供应用程序的网址。

为此,请运行vue serve -o app.vue

Vue build

vue build app.vue

其中app.vue是要提供服务的组件或文件的名称。

vue build命令将构建可用于生产环境的捆绑软件,它还允许您指定是将其构建为库还是Web组件。

要构建为库,请使用vue build -t lib app.vue,而要构建为Web组件,请使用vue build -t wc app.vue

环境变量

新的CLI现在允许您在项目根目录中使用.env文件来使用环境变量。

该文件由键=值对组成。

每个人至少需要管理2个环境,这意味着我们需要为此环境指定变量。

为了有效地做到这一点,CLI引入了我们所说的模式。

模式只是环境的别称,它指定您是处于开发,生产还是测试模式。

创建仅由特定模式使用的变量。 您必须将模式名称作为后缀添加到.env文件名中。

.env.development用于开发模式,.env.production用于生产模式。

注意:要使CLI将变量嵌入客户端捆绑软件代码中,该变量必须以VUE_APP_名称为前缀。

现在添加变量seckey变为VUE_APP_SECKEY

调整Webpack配置

Vue CLI提供了一种非常简单灵活的方法来调整内部Webpack配置。

为此,您必须在vue.config.js中使用configureWebpack选项

// vue.config.js
module.exports = {
  configureWebpack: {
    plugins: [
      new MyAwesomeWebpackPlugin()
    ]
  }
}

以防万一您在项目根目录中没有vue.config.js文件。 您将必须手动创建它。

您可能想知道:“我如何知道内部Webpack配置中已经存在的内容,所以我知道需要添加什么?”

好了,这是vue inspect命令变得方便的地方。

此命令将所有内部Webpack配置输出到您的终端。

要将其输出到文件,只需指定这样的文件名

vue inspect > output.js

相关推荐:

2020年前端vue面试题大汇总(附答案)

vue教程推荐:2020最新的5个vue.js视频教程精选

更多编程相关知识,请访问:编程入门!!

以上是深入研究Vue CLI3的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:logrocket。如有侵权,请联系admin@php.cn删除
vue.js的功能:增强前端的用户体验vue.js的功能:增强前端的用户体验Apr 19, 2025 am 12:13 AM

Vue.js通过多种功能提升用户体验:1.响应式系统实现数据即时反馈;2.组件化开发提高代码复用性;3.VueRouter提供平滑导航;4.动态数据绑定和过渡动画增强交互效果;5.错误处理机制确保用户反馈;6.性能优化和最佳实践提升应用性能。

vue.js:定义其在网络开发中的作用vue.js:定义其在网络开发中的作用Apr 18, 2025 am 12:07 AM

Vue.js在Web开发中的角色是作为一个渐进式JavaScript框架,简化开发过程并提高效率。1)它通过响应式数据绑定和组件化开发,使开发者能专注于业务逻辑。2)Vue.js的工作原理依赖于响应式系统和虚拟DOM,优化性能。3)实际项目中,使用Vuex管理全局状态和优化数据响应性是常见实践。

了解vue.js:主要是前端框架了解vue.js:主要是前端框架Apr 17, 2025 am 12:20 AM

Vue.js是由尤雨溪在2014年发布的渐进式JavaScript框架,用于构建用户界面。它的核心优势包括:1.响应式数据绑定,数据变化自动更新视图;2.组件化开发,UI可拆分为独立、可复用的组件。

Netflix的前端:React(或VUE)的示例和应用Netflix的前端:React(或VUE)的示例和应用Apr 16, 2025 am 12:08 AM

Netflix使用React作为其前端框架。1)React的组件化开发模式和强大生态系统是Netflix选择它的主要原因。2)通过组件化,Netflix将复杂界面拆分成可管理的小块,如视频播放器、推荐列表和用户评论。3)React的虚拟DOM和组件生命周期优化了渲染效率和用户交互管理。

前端景观:Netflix如何处理其选择前端景观:Netflix如何处理其选择Apr 15, 2025 am 12:13 AM

Netflix在前端技术上的选择主要集中在性能优化、可扩展性和用户体验三个方面。1.性能优化:Netflix选择React作为主要框架,并开发了SpeedCurve和Boomerang等工具来监控和优化用户体验。2.可扩展性:他们采用微前端架构,将应用拆分为独立模块,提高开发效率和系统扩展性。3.用户体验:Netflix使用Material-UI组件库,通过A/B测试和用户反馈不断优化界面,确保一致性和美观性。

React与Vue:Netflix使用哪个框架?React与Vue:Netflix使用哪个框架?Apr 14, 2025 am 12:19 AM

NetflixusesAcustomFrameworkcalled“ Gibbon” BuiltonReact,notReactorVueDirectly.1)TeamExperience:selectBasedAsedonFamiliarity.2)ProjectComplexity:vueforsimplerprojects,vueforsimplerprojects,reactforforforecomplexones.3)cocatizationNeedsneeds:reactofficatizationneedneeds:reactofferizationneedneedneedneeds:reactoffersizatization needeffersefersmoreflexiblesimore.4)ecosyaka

框架的选择:是什么推动了Netflix的决定?框架的选择:是什么推动了Netflix的决定?Apr 13, 2025 am 12:05 AM

Netflix在框架选择上主要考虑性能、可扩展性、开发效率、生态系统、技术债务和维护成本。1.性能与可扩展性:选择Java和SpringBoot以高效处理海量数据和高并发请求。2.开发效率与生态系统:使用React提升前端开发效率,利用其丰富的生态系统。3.技术债务与维护成本:选择Node.js构建微服务,降低维护成本和技术债务。

反应,vue和Netflix前端的未来反应,vue和Netflix前端的未来Apr 12, 2025 am 12:12 AM

Netflix主要使用React作为前端框架,辅以Vue用于特定功能。1)React的组件化和虚拟DOM提升了Netflix应用的性能和开发效率。2)Vue在Netflix的内部工具和小型项目中应用,其灵活性和易用性是关键。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具