参照:https://segmentfault.com/a/1190000011882193
一、准备环境
1、安装nodejs v10.1.0 略
2、安装cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org
安装成功,显示如下:
3、安装webpack
cnpm install -g webpack
安装成功,显示如下:
4、安装webpack-cli
cnpm install -g webpack-cli
安装成功,显示如下:
5、查看webpack版本
webpack -v
二、使用webpack
新建工程,找一个空的文件夹,命令行内执行:
npm init
一路回车即可,完成后目录内:
新建几个文件:
app.js
index.html
module.js
app.js--webpack运行的入口程序
index.html--本示例中的网页文件
module.js--一个js模组
修改入口程序
修改module.js为:
export default function(){
document.write("module.js has been modified");
}
在这里,我们通过export暴露了一个方法,在app.js里面我们会调用这个方法。
修改app.js为:
import module from "./module"
document.write("app.js has been add");
module();
app.js里我们通过import方法导入了module.js中的包,并把module作为module.js中暴露出的函数。
最后,让我们修改index.html,直接复制粘贴即可:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script src="./dist/bundle.js"></script>
</body>
</html>
也只是调用了一下dist目录下的bundle.js而已
我们此时的目录结构应该为:
.
|-- app.js
|-- index.html
|-- module.js
|-- node_modules
|-- package-lock.json
`-- package.json
那么,让我们运行一下吧,如果安装了全局webpack的话我们可以运行:
webpack ./app.js --output ./dist/bundle.js --mode development
打包成功后,显示成功:
看一下打包后的文件:
浏览器中打开:
三、通过配置文件使用webpack
工程目录下新建文件“webpack.config.js”,内容:
const path = require("path");
module.exports = {
entry : "./app.js",
output : {
path : path.join(__dirname,"dist"),
filename : "bundle.js"
}
}
此时,命令行中直接执行:
webpack