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

深入研究Vue CLI3

Oct 05, 2020 pm 04:07 PM
vue cli vue.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>调用已安装的插件生成器以创建插件正常工作所需的文件。

  • 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中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

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

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1666
14
CakePHP 教程
1425
52
Laravel 教程
1327
25
PHP教程
1273
29
C# 教程
1252
24
深入探讨vite是怎么解析.env文件的 深入探讨vite是怎么解析.env文件的 Jan 24, 2023 am 05:30 AM

使用vue框架开发前端项目时,我们部署的时候都会部署多套环境,往往开发、测试以及线上环境调用的接口域名都是不一样的。如何能做到区分呢?那就是使用环境变量和模式。

图文详解如何在Vue项目中集成Ace代码编辑器 图文详解如何在Vue项目中集成Ace代码编辑器 Apr 24, 2023 am 10:52 AM

Ace 是一个用 JavaScript 编写的可嵌入代码编辑器。它与 Sublime、Vim 和 TextMate 等原生编辑器的功能和性能相匹配。它可以很容易地嵌入到任何网页和 JavaScript 应用程序中。Ace 被维护为Cloud9 IDE的主要编辑器 ,并且是 Mozilla Skywriter (Bespin) 项目的继承者。

vue中组件化和模块化有什么区别 vue中组件化和模块化有什么区别 Dec 15, 2022 pm 12:54 PM

组件化和模块化的区别:模块化是从代码逻辑的角度进行划分的;方便代码分层开发,保证每个每个功能模块的职能一致。组件化是从UI界面的角度进行规划;前端的组件化,方便UI组件的重用。

探讨如何在Vue3中编写单元测试 探讨如何在Vue3中编写单元测试 Apr 25, 2023 pm 07:41 PM

当今前端开发中,Vue.js 已经成为了一个非常流行的框架。随着 Vue.js 的不断发展,单元测试变得越来越重要。今天,我们将探讨如何在 Vue.js 3 中编写单元测试,并提供一些最佳实践和常见的问题及解决方案。

Vue Cli中出现'The requested module does not provide an export named' Error – 怎么解决? Vue Cli中出现'The requested module does not provide an export named' Error – 怎么解决? Aug 20, 2023 pm 07:25 PM

VueCli中出现'Therequestedmoduledoesnotprovideanexportnamed'Error–怎么解决?在Vue项目的开发过程中,我们可能会遇到'Therequestedmoduledoesnotprovideanexportnamed'的错误提示。这个错误提示一般会出现在引入第三方组件时

聊聊vue3中怎么使用高德地图api 聊聊vue3中怎么使用高德地图api Mar 09, 2023 pm 07:22 PM

在我们使用高德地图的时候,官方给我们推荐了很多案例,demo,但是这些案例都是使用原生方法接入,并没有提供vue或者react 的demo,vue2的 接入网上也很多人都有写过,下面本篇文章就来看看 vue3怎么使用常用的高德地图api,希望对大家有所帮助!

怎么查询当前vue的版本 怎么查询当前vue的版本 Dec 19, 2022 pm 04:55 PM

查询当前vue版本的两种方法:1、在cmd控制台内,执行“npm list vue”命令查询版本,输出结果就是vue的版本号信息;2、在项目中找到并打开package.json文件,查找“dependencies”项即可看到vue的版本信息。

Vue中JSX语法和模板语法的简单对比(优劣势分析) Vue中JSX语法和模板语法的简单对比(优劣势分析) Mar 23, 2023 pm 07:53 PM

在Vue.js中,开发人员可以使用两种不同的语法来创建用户界面:JSX语法和模板语法。这两种语法各有优劣,下面就来探讨一下它们的区别和优劣势。

See all articles