webpack的安装基于node的npm模块,所以要先安装node环境,再用npm安装webpack。
安装:
1.全局安装
$ npm install webpack -g
可用webpack -v
查看安装版本
2.项目目录安装
$ npm install webpack --save-dev
结尾处--save-dev
表示写入package.json,方面以后安装
3.如需安装webpack开发工具,单独安装
$ npm install webpack-dev-server --save-dev
webpack的安装基于node,所以要先安装node环境,安装完成后,再用npm安装webpack。
使用:
首先创建一个静态页面 index.html 和一个 JS 入口文件 entry.js:
<!-- index.html -->
<html>
<head>
<meta charset="utf-8">
</head>
<body>
//注意:引入的是bundle.js
<script src="bundle.js"></script>
</body>
</html>
// entry.js
document.write('It works.')
然后编译 entry.js 并打包到 bundle.js:
cmd命令行
$ webpack entry.js bundle.js
打包过程会显示日志:
<!--Hash: e964f90ec65eb2c29bb9
Version: webpack 1.12.2
Time: 54ms
Asset Size Chunks Chunk Names
bundle.js 1.42 kB 0 [emitted] main
[0] ./entry.js 27 bytes {0} [built]-->
213
用浏览器打开 index.html 将会看到 It works. 。
接下来添加一个模块 module.js 并修改入口 entry.js:
//module.js
module.exports = 'It works from module.js
// entry.js
document.write('It works.')
document.write(require('./module.js')) // 添加模块
重新打包 webpack entry.js bundle.js 后刷新页面看到变化 It works.It works from module.js.
Webpack 会分析入口文件,解析包含依赖关系的各个文件。这些文件(模块)都打包到 bundle.js 。Webpack 会给每个模块分配一个唯一的 id 并通过这个 id 索引和访问模块。在页面启动时,会先执行 entry.js 中的代码,其它模块会在运行 require 的时候再执行。