写点什么

Vue CLI 4 发布:自动化升级过程,支持自定义包管理器

  • 2019-12-28
  • 本文字数:980 字

    阅读完需:约 3 分钟

Vue CLI 4发布:自动化升级过程,支持自定义包管理器

Vue CLI团队最近把他们的命令行工具更新到了 4.0.0 版本。这一版本可以帮助开发者自动化升级过程,可以使用额外的包管理器,并可以更准确更有效移除 DOM 中多余的空格。


在 Vue CLI 3 中,“vue build”命令并不会基于 vue.config.js 的配置生成 manifest.json 文件。新版本加入了 pwa.manifestOptions 配置字段,可以根据配置对象生成 manifest.json 文件,不需要从项目公共文件夹拷贝这个文件了。这一变更为 Vue PWA 的配置管理提供了更为一致的接口。


在之前的版本中,为不同的模式运行 Vue 命令会生成不一样的目录布局。而在最新的版本中,为所有模式生成的目录布局都是一样的。


在 Vue CLI 4 中,开发者可以在 vue create 命令后面通过添加–packageManager [packagename]来指定不一样的 Node 包管理器。



要从 Vue CLI 3 升级到 4,需要执行 vue upgrade 命令。在版本 3 中,这个命令只会安装最新的 Vue CLI 插件。而在版本 4 中,Vue CLI 会运行升级插件,自动进行升级。


现在,在执行 vue upgrade 命令时,如果 CLI 发现当前代码库里有未提交的代码修改,它会与用户确认。



空格处理也在 Vue CLI4 中得到了改进。对于以下这个模板:


<p>  Welcome to <b>Vue.js</b> <i>world</i>.  Have fun!</p>
复制代码


在 Vue CLI 3 中,如果 preserveWhitespace 设置成 false 就会把这个模板编译成:


<p> Welcome to <b>Vue.js</b><i>world</i>. Have fun! </p>
复制代码


这样会出现不期望的结果:


Welcome to Vue.jsworld. Have fun!
复制代码


新版本的 CLI 为开发者提供了 whitespace: 'condense’选项来解决这个问题:


<p> Welcome to <b>Vue.js</b> <i>world</i>. Have fun! </p>
复制代码


输出结果正如我们期望的那样:


Welcome to Vue.js world. Have fun!
复制代码


新的 CLI 配置能够更准确更有效地移除多余的空格。


最新版的 Vue CLI 对底层的主要依赖进行了升级。除了 core-js-3、Nightwatch 1.x 和 Jest 24,Vue CLI 4 还加入了 Mocha 6、workbox-webpack-plugin,等等。


Vue CLI 4 的另一个改进是在应用插件的生成器时能够更好地处理异步操作。Vue CLI 4 支持生成器的异步函数。另外,新引入的 afterInvoke 和 afterAnyInvoke 钩子可以监听插件对另一个插件的调用。


要了解更多有关 Vue CLI 4 的信息,可以参考 Vue CLI升级指南


Vue CLI 基于 MIT 开源许可协议。开发者可以通过 GitHub 的vue-cli项目参与贡献,并遵循 Vue CLI贡献指南


原文链接


Vue.js CLI 4 Released


2019-12-28 09:006136

评论

发布
暂无评论
发现更多内容

Go-Excelize API源码阅读(八)——UngroupSheets()

Regan Yue

Go 开源 源码刨析 8月日更 8月月更

Android技术分享|【Android踩坑】怀疑人生,主线程修改UI也会崩溃?

anyRTC开发者

android 音视频 UI 移动开发 主线程

网易DBA团队出品“Mysql实用手册”正式开源,Github日下载破万

冉然学Java

Java MySQL 数据库 开源 架构

TiDB 查询优化及调优系列(五)调优案例实践

TiDB 社区干货传送门

上海前端培训学习好就业难吗

小谷哥

【React源码系列】React Hydrate原理及源码剖析

爱切图的木子老师

React react源码 React服务端渲染原理 React Hydrate

元宇宙-原来挺简单

刘旭东

WebGL 数字孪生 元宇宙 blender Shapr3D

TiFlash DeltaTree Index 的设计和实现分析

TiDB 社区干货传送门

【直播回顾】OpenHarmony知识赋能六期第五课—WiFi子系统

OpenHarmony开发者

OpenHarmony

vue-i18n国际化语言在项目中的使用

CRMEB

手写webpack tapable源码,官方tapable的性能真的就一定是好的吗?

爱切图的木子老师

前端 webpack 前端面试 webpack-tapable

前端监控系列1| 字节的前端监控SDK是怎样设计的

字节跳动终端技术

前端 监控 sdk

【等保小知识】过等保一定要买堡垒机吗?堡垒机有什么作用?

行云管家

网络安全 等保 堡垒机 等级保护 过等保

TiDB 论文引发的 HTAP 数据库再思考

TiDB 社区干货传送门

数据库架构选型

达摩克利斯之剑:开源软件的合规风险及防控策略

SEAL安全

开源安全 软件供应链安全 开源合规 软件供应链攻击

学习大数据课程后好找工作吗?

小谷哥

使用 TiDB Cloud (DevTier) 构建 TiDB 集群

TiDB 社区干货传送门

Spark 性能调优

TiDB 社区干货传送门

性能调优

TiSpark 如何扩展 Spark

TiDB 社区干货传送门

Linux面试最高频的5个基本问题

千锋IT教育

海泰方圆政务信息系统密码应用解决方案 保障政务业务和数据安全

电子信息发烧客

TiSpark 原理之下推丨TiDB 工具分享

TiDB 社区干货传送门

Netty实战 -- 使用Netty实现分布式框架Dubbo RPC

Bug终结者

dubbo Netty RPC 网络通信 8月月更

Oracle SQL Language Reference手册中的错误

我不吃六安茶

ANTLR

Redis让我凉在美团一面,摸爬滚打3个月,二战逆袭成功斩获Offer

冉然学Java

Java redis 数据结构 面试 美团

「周大福」WeOps助力周大福开启IT运维数字化转型之路

嘉为蓝鲸

带你了解TensorFlow pb模型常用处理方法

华为云开发者联盟

人工智能 模型

使用 Spring Boot 构建 TiDB 应用程序

TiDB 社区干货传送门

什么是编译器中的常量传播?

华为云开发者联盟

开发 编译器 常量传播 基本块

2022 CCF中国开源大会会议通知(第四轮)

CCF开源发展委员会

SpringMVC(六、声明式事务控制)

开源 springmvc 8月月更

Vue CLI 4发布:自动化升级过程,支持自定义包管理器_大前端_Swanand Kadam_InfoQ精选文章