webpack研究一下热加载技术,修改代码时页面自动刷新。
在webpack入门第6篇里,已经说过了,新建几个文件,在这就不建了,因为那样做,感觉无法突出重点,所以只写改动的部分。
1、修改webpack.config.js
module.exports = {
entry: "./entry.js",
output: {
path: __dirname,
filename: "bundle.js"
},
module: {
loaders: [
{test: /\.css$/, loader: "style-loader!css-loader"}
]
},
devServer: {
contentBase: './',
port: 9000
}
};
比以前增加了,这是配置服务的端口号,以及监听的目录
devServer: {
contentBase: './',
port: 9000
}
2、在命令行输入,添加服务器
npm install webpack -D
npm install webpack-dev-server -D
3、修改package.json
改后如下:
{
"name": "demo4",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "webpack-dev-server --hot",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"css-loader": "^0.28.7",
"style-loader": "^0.18.2",
"webpack": "^3.6.0",
"webpack-dev-server": "^2.8.2"
}
}
主要修改了
"start": "webpack-dev-server --hot",
4、在命令行里输入
npm start
5、在浏览器输入
http://localhost:9000/
查看页面运行结果。
6、让我们来测试一下效果,修改content.js文件
alert(555)
module.exports = "It works from content.js.";
发现页面弹窗了,再修改.css文件看看,保存
body {
background: gold;
}
发现页面自动变为了金色。但是并没有弹窗,说明页面并不是全部刷新,而是修改部分,这种效果不错吧。