webpack4:在内存中生成首页之html-webpack-plugin插件
1、安装:
cnpm i html-webpack-plugin -D
2、webpack.config.js中配置plugins属性:
const path = require("path") const htmlWebpackPlugin = require("html-webpack-plugin") // 导入 在内存中自动生成html文件 的插件 // 创建一个插件的实例对象 const htmlPlugin = new htmlWebpackPlugin({ template: path.join(__dirname, "./src/index.html"), // 源文件 filename: "index.html" // 生成的 内存中首页的 名称 }) module.exports = { mode: ‘production‘, // development 或 production plugins: [ htmlPlugin ] }
其中package.json(和其它地方一样,没什么特殊的):
{ "name": "wp4-1", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "dev": "webpack-dev-server --open chrome --port 3000 --hot --host 127.0.0.1" }, "keywords": [], "author": "", "license": "ISC", "devDependencies": { "html-webpack-plugin": "^3.2.0", "webpack": "^4.41.5", "webpack-cli": "^3.3.10", "webpack-dev-server": "^3.10.1" } }
3、cmd中运行:npm run dev
4、浏览器中运行:http://127.0.0.1:3000/
5、查看生成的首页index.html文件的源码,发现插件自动添加了“<script type="text/javascript" src="main.js"></script>”:
<!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> <script src="../main.js"></script> </head> <body> <h1>首页</h1> <script type="text/javascript" src="main.js"></script></body> </html>