博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
webpack指南-webpack入门-开始使用webpack
阅读量:6262 次
发布时间:2019-06-22

本文共 2005 字,大约阅读时间需要 6 分钟。

webpack用来在你的app中建立JS模块。为了从cli或api开始使用webpack,按照安装手顺即可。

webpack通过快速构建app依赖图并以正确顺序打包来简化工作。webpack可以配置来做代码定制优化,为产品划分vendor/css/js,运行一个热重载你的代码的开发服务器而不需要刷新页面之类的好特性。

继续学习以了解为什么你应该使用webpack

创建一个打包文件

创建demo来试用webpack。

mkdir webpack-demo && cd webpack-demo

npm init -y

npm install --save-dev webpack

./node_modules/.bin/webpack --help # Shows a list of valid cli commands

.\node_modules\.bin\webpack --help # For windows users

webpack --help # If you installed webpack globally

创建子目录/app并新建index.js

app/index.js

function component () {

    var element = document.createElement('div');

    /* lodash is required for the next line to work */

    element.innerHTML = _.join(['Hello','webpack'], ' ');

    return element;

}

document.body.appendChild(component());

为了运行这段代码,一般需要以下的HTML

index.html

In this example, there are implicit dependencies between thetags.

在这个示例中,标签中有隐式依赖。

index.js依赖在它运行之前引入的lodash。他是隐式依赖的原因是index.js从未声明lodash的需求,他只是假定有一个全局变量_存在。

但是如此维护JS项目有一些问题。

○如果依赖缺失,或者引入顺序错误,app将不能起作用。

○如果依赖被引入但未被使用,那么浏览器需要去下载很多不必要的代码。

为了将lodash依赖和index.js打包,我们需要首先安装lodash

npminstall--save lodash

然后导入

我们也需要更改index.html文件来仅仅需要一个bundle.js文件。

现在,index.js显示依赖lodash并将之与_绑定(没有全局作用域污染)

通过声明模块所需依赖,webpack可以以此信息创建依赖图。他将使用依赖图生成会以正确顺序执行的定制打包文件。当然,未被使用的依赖不会被打包。

运行webpack,以index.js为输入,bundle.js为输出,这个页面所必须的代码都将被打包好。

用浏览器打开index.html文件,观察成功打包后的结果,你应该会看到页面上出现Hello webpack的文字。

Using ES2015 modules with webpack

注意到app/index.js中使用的ES2015模块import(也称ES2015,harmony)了吗?虽然浏览器(暂时)不支持import/export,使用它们仍旧是好的,因为webpack会用ES5兼容封装代码替换那些命令。查看dist/bundle.js以验证。

注意,webpack除了import/export外不会初级你的代码。如果你在使用其他的ES2015特性,确保使用类似Bable或者Bublé这样的转换编译器。

Using webpack with a config

在更加复杂的配置情况下,我们可以使用配置文件让webpack为我们打包代码。创建webpack.config.js文件后,你可以用下面所示config设定来完成之前的CLI命令操作。

按照如下方式运行。

config文件提供了所有的灵活性。使用配置文件我们可以添加加载器规则,插件,解析选项以及很多其他增强到包中。

Using webpack with npm

通过CLI方式运行webpack并不有趣,我们可以更快捷,更改package.js:

现在你可以通过npm build命令完成同样功能了。npm找出scripts并临时合并到环境中这样就能包含bin命令了。你将会在大量项目中看到这个惯例。

结论

既然你拥有一个基础创建,你应该深入 基本概念 和 配置 章节来更好地理解webpack的设计。同时查看guides学习如何处理共通问题。API部分包含低级别特性用法。

转载地址:http://ulkpa.baihongyu.com/

你可能感兴趣的文章
(转)Eclipse中junit框架的使用——单元测试
查看>>
lock关键字理解
查看>>
20172303 2018-2019-1 《程序设计与数据结构》第3周学习总结
查看>>
[Javascript]史上最短的IE浏览器判断代码
查看>>
关于《大道至简》第五章的收获
查看>>
网卡驱动
查看>>
kinect sdk开发入门WPFdemo笔记
查看>>
Server.Transfer详细解释
查看>>
java单链表的增、删、查操作
查看>>
The working copy at 'xxx' is too old 错误解决
查看>>
jadclipse
查看>>
// 1.什么是JOSN?
查看>>
SQL语句详细汇总
查看>>
如何保护.net中的dll文件(防破解、反编译)
查看>>
Python 装饰器
查看>>
Docker 网络模式
查看>>
[POI2013]Usuwanka
查看>>
problem-solving-with-algorithms-and-data-structure-usingpython(使用python解决算法和数据结构) -- 算法分析...
查看>>
nodejs + CompoundJS 资源
查看>>
转:C#并口热敏小票打印机打印位图
查看>>