webpack-dev-server 使用

it2022-05-08  7

Step1 安装

npm i webpack-dev-server npm i cross-env

Step2 配置

要判断下,这个webpack的配置是要同时跑在开发环境和生产环境的,所以需要一个变量区分下

package.json

加 dev NODE_ENV=production 适用于 Mac平台上 set NODE_ENV=production 适用于win平台下 这个cross-env 就是处理这两个不同平台的 NODE_ENV 是环境变量

"scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "cross-env NODE_ENV=production webpack --config webpack.config.js", "dev": "cross-env NODE_ENV=development webpack-dev-server --config webpack.config.js" },

NODE_ENV=development 变量名都放在 process.env 里面的。所以在package.json里你可以设置很多个变量名

webpack.config.js

webpack.config.js 上加上下面这段代码,后面用if判断isDev 来运行不同的配置 devserver 这个配置项 是在webpack2以后才加入的,webpack1 没有这个项 webpack-dev-server 启动,启动后就是一个服务,所以devserver

config.devserver配置项
overlay 用处:webpack编译中,出现的错误,都能显示在网页上hot 热重载 const isDev = process.env.NODE_ENV === 'development' if(isDev){ config.devserver = { port: '8000', host: '127.0.0.1', overlay: { errors: true }, hot: true } }else{ } const config = { //这里放webpack配置 } ` ` ` module.exports = config

Step3 配置 html 作为入口

需要安装一个插件 html-webpack-plugin npm i html-webpack-plugin 在webpack.config.js中 引入 这个插件 并 配置 const HTMLPlugin = require('html-webpack-plugin') ` ` ` module.exports = { plugins: [ new HTMLPlugin() ] }

最新回复(0)