- 原文地址:webpack 3: Official Release!!
- 原文做者:Sean T. Larkin
- 译文出自:掘金翻译计划
- 译者:xilihuasi
- 校对者:achilleo
终于来了,美妙极了。前端
在咱们发布 webpack v2 以后,咱们对社区作了一些许诺。咱们承诺将在将来发布一些大家投票选出的特性。此外,咱们的周期发布将会更快,更稳定。react
再也不有一年之久的测试版本,版本之间再也不有爆炸性的变化。咱们以大家和社区让 webpack 更繁荣的名义,保证大家行使本身的权利。android
webpack 团队自豪地宣布,今天 webpack 3.0.0 发布啦!!!今天你就能够下载或更新!!webpack
npm install webpack@3.0.0 --save-dev
ios
或者git
yarn add webpack@3.0.0 --dev
github
从 webpack 2 迁移到 3,应该 只需在 terminal 中执行升级命令。由于内部的重大改变可能会影响一些插件,咱们把这项特性做为重要更新收录了。web
目前为止98% 的用户在升级后没有影响原有功能的使用npm
正如前面提到的,咱们旨在发布大家投票选出的那些特性!因为 GitHub 上大量的贡献,以及来自咱们支持者和赞助商的支持,咱们已经有实现全部这些特性的能力。 😍后端
做用域提高是 webpack 3 的主要功能。以前版本的 webpack 在打包时的一个妥协是包里面的每一个模块都会被包装到一个独立的函数闭包中。这些包装函数使你在浏览器中执行的 JavaScript 代码变得更慢。相比之下,例如 Closure Compiler 和 RollupJs 这样的工具把全部模块的做用域‘提高’或者串联在一个闭包,而且使你的代码在浏览器中有更快的执行时间。
直至今天,使用 webpack 3,你能够立刻把以下插件添加到你的配置中来启用做用域提高:
module.exports = {
plugins: [
new webpack.optimize.ModuleConcatenationPlugin()
]
};复制代码
具体而言,做用域提高是一个基于 ECMAScript Module 语法的特性。正因如此,webpack 可能会根据你使用的模块种类,以及其余条件回退到普通的打包方式。
为了随时了解什么触发了这些回退,咱们添加了一个 --display-optimization-bailout
命令行标志来告诉你什么因素致使了这些回退。
由于做用域提高将移除模块的函数包装,你将会看到文件大小的少许精简。然而,更显著的提高在于,浏览器加载 JavaScript 的时候有多么迅速。若是你在作了比较以后感到很爽,或者自由地获取数据响应,那就快去跟朋友分享吧!
当咱们在 webpack 2 中介绍动态引入语法( import()
)的使用时,用户们担忧他们不能像使用 require.ensure
同样建立命名块。
咱们如今已经采用了社区创造的“魔法注解”,拥有传递块名的能力,以及其余就像 import()
语句的行内注释。
import(/* webpackChunkName: "my-chunk-name" */ 'module');复制代码
经过使用注解,咱们能够保证加载的规范,而且仍然提供你喜欢的块命名特性。虽然这些技术性的特性咱们已经在 v2.4 和 v2.6 中发布了,咱们努力提高稳定性及修复 bug 来保证这些特性在 v3 中正式落地。如今已经可使用和 require.ensure
同样灵活的动态引入语法了。
想要了解更多资讯,来看咱们的代码拆分的最新文档指南详细了解这些特性!!!
咱们还有一些特性和功能增强但愿提供给大家!!!可是饭得一口一口吃,事情要一件一件作,在咱们的投票页面,给投那些你想看到的特性吧!
这里还有一些咱们仍然想提供给大家的东西:
全部咱们的用户、贡献者、文档做者、博客主、赞助商、支持者和维护者,都是这些年来帮助咱们保证 webpack 成功的投资人。
为此,感谢大家全部人。是大家使这些成为了可能,咱们已经火烧眉毛跟大家分享将来咱们还有哪些黑科技了!!
没时间帮助贡献?想用其余方式回馈?咱们的 open collective。Open Collective 不只支撑整个核心团队,并且还帮助那些在业余时间花了大量时间来提高咱们组织的贡献者们! ❤
掘金翻译计划 是一个翻译优质互联网技术文章的社区,文章来源为 掘金 上的英文分享文章。内容覆盖 Android、iOS、React、前端、后端、产品、设计 等领域,想要查看更多优质译文请持续关注 掘金翻译计划。