写点什么

Webpack 2 最终版本发布,聚焦文档内容提升

  • 2017-01-22
  • 本文字数:1059 字

    阅读完需:约 3 分钟

流行的 JavaScript 模块和资源打包工具 webpack 2 最终版本已经发布,该版本可以实现对 ES2015 的本地支持,并大大改善了文档内容。但是,新版本是否能显著改进构建时间和文件大小还有待观察。

Webpack 2(官方版本 2.2)中的许多变更都旨在让它的使用变得更加简单。最受欢迎的升级内容之一就是新的文档指南。比如说,版本2 的文档中有专门用于解释核心概念(如加载器、插件和配置)的部分,解释的比 1.x 文档更加详细,这可以帮助减少新手开始使用的时间。团队现在非常重视文档的编写。

Webpack 文档协调员 Juho Vepsäläinen 表示,新的文档在版本 2 中起到至关重要的作用

如果你对 webpack 已经有了了解,那版本 1.0 的文档对你会有帮助。但如果你刚开始了解这个工具,这份文档对你来说并不是很好上手的材料。为了让 webpack 变得更加可用,我们决定重新编写文档。

对于正在使用 1.x 版本并想转而用 2.x 版本的开发者,可以参考迁移指南。在新版本中对于一些配置术语进行了更改,开发者可以更加简单地理解这些术语。举个例子来说,顶级module.loaders 部分变更为 module.rules。由于配置中加载器中还有加载器,1.x 版本可能会让人感到困惑。新版本的文档解释得就非常清晰,加载器作为规则的一部分进行介绍。

原来链接加载器的方法繁琐且复杂:

复制代码
loader: "style-loader!css-loader!less-loader"

新的方法将其分为一个数组,阅读变得更为方便:

复制代码
use: [
"style-loader",
"css-loader",
"less-loader"
]

由于 webpack 2 支持开箱即用的 ES2015 模块,所以它默认情况下支持 tree shaking 代码优化技术。tree shaking 从目标包中删除了未使用的代码,以减小其大小。不幸的是,由于默认情况下浏览器还不支持 ES2015 模块,所以目前大多 JavaScript 生态系统都会将代码编译到 CommonJS 来去除其影响。Swizec Teller目前的改进是比较小的:

然而,我们必须等待整个生态系统都能赶上进度。大多数库都会随着将 ES6 模块编译为 ES6 一起分布,所以在现实的情况下,改善程度仅仅提升了 4%。由于 Webpack 2 的发布,这一点必将提升。

现在还不清楚版本 2 是否变快了很多。Brett Uglow分享了他使用webpack 2 的速度体验,但他对结果比较失望。Webpack 核心团队成员Sean Larkin他们在临近开发结束的时候改变了webpack 的构建方式,“它在性能方面获得了显著的提升”。

展望未来,团队邀请社区参与到功能票选中来,帮助指导并确定未来发展的优先顺序。当发出npm install webpack 命令时,版本2.2 即将成为安装的默认版本。

查看英文原文 Webpack 2 Finalized with Focus on Improved Documentation

2017-01-22 18:003828
用户头像

发布了 218 篇内容, 共 79.5 次阅读, 收获喜欢 76 次。

关注

评论

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

HTTP系列之:HTTP中的cookies

程序那些事

Java 网络协议 HTTP cookies

(深入篇)漫游语音识别技术—带你走进语音识别技术的世界

RTE开发者社区

深度学习 音视频 语音识别

多线程知识体系01-线程池源码阅读讲解-Executor

小马哥

多线程 高并发 源码阅读 源码剖析 日更

Vue进阶(九十):过滤器

No Silver Bullet

Vue 9月日更

ShardingSphere 语句解析生成初探

源码 ShardingSphere

升级mysql-connector-java-8.x踩坑纪实

小江

Java MySQL 时间戳 服务器时区 夏令时

Go 专栏|复合数据类型:字典 map 和 结构体 struct

AlwaysBeta

Go 语言

Go 专栏|函数那些事

AlwaysBeta

Go 语言

Go 专栏|错误处理:defer,panic 和 recover

AlwaysBeta

Go 语言

Go 专栏|接口 interface

AlwaysBeta

Go 语言

【Vue2.x 源码学习】第四十三篇 - 组件部分 - 组件相关流程总结

Brave

源码 vue2 9月日更

线程同步类CyclicBarrier在性能测试集合点应用

FunTester

多线程 性能测试 线程安全 测试框架 FunTester

Linux之lastlog命令

入门小站

Linux

从一个并发异常问题引起的想法

卢卡多多

并发编程 9月日更

模块(二)如何设计架构

我是一只小小鸟

【LeetCode】 二叉树中和为某一值的路径Java题解

Albert

算法 LeetCode 9月日更

LeetCode刷题278-简单-第一个错误版本

ベ布小禅

9月日更

Go 专栏|变量和常量的声明与赋值

AlwaysBeta

Go 语言

Go 专栏|基础数据类型:整数、浮点数、复数、布尔值和字符串

AlwaysBeta

Go 语言

Electron团队为什么要干掉remote模块

刘晓伦

Electron Node

Java + opencv 实现图片修复(图片去水印)

张音乐

Java OpenCV 音视频 9月日更 图片去水印

Linux内核四大核心框架

hanaper

【HTML5游戏】从敲打空格键开始

devpoint

HTML5游戏 9月日更

Go 专栏|复合数据类型:数组和切片 slice

AlwaysBeta

Go 语言

Go 专栏|流程控制,一网打尽

AlwaysBeta

Go 语言

Go 专栏|说说方法

AlwaysBeta

Go 语言

在线JSON转JAVA工具

入门小站

工具

【Flutter 专题】58 图解 Flutter 嵌入原生 AndroidView 小尝试

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 9月日更

链路压测中各接口性能统计

FunTester

性能测试 测试框架 测试开发 FunTester 链路测试

【报名】飞桨中国行丨企业零门槛AI创新应用-智能制造专场

百度大脑

人工智能

未来10年,5个C/C++吃香的细分领域技术

奔着腾讯去

云原生 网络安全 音视频 DPDK 虚拟化技术

Webpack 2最终版本发布,聚焦文档内容提升_JavaScript_David Iffland_InfoQ精选文章