下面给大家讲讲如何使用webpack-dev-server搭建本地开发服务器并实现实时重载,具体步骤如下:
下面给大家讲讲如何使用webpack-dev-server
搭建本地开发服务器并实现实时重载,具体步骤如下:
安装webpack-dev-server
首先,在项目中安装webpack-dev-server
,可以使用npm安装,命令为:
npm install webpack-dev-server --save-dev
配置webpack-dev-server
在webpack
的配置文件中添加devServer
属性,示例如下:
module.exports = {
// ... 其他配置
devServer: {
contentBase: path.join(__dirname, "dist"), // 指定服务器文件的根目录
compress: true, // 开启gzip压缩
port: 8080, // 指定服务器的端口
open: true, // 自动打开浏览器
},
};
其中,contentBase
表示webpack-dev-server
开启的服务器的根目录。compress
表示开启gzip
压缩。port
表示服务器使用的端口,open
表示自动打开浏览器。
使用webpack-dev-server
在命令行中输入以下命令启动webpack-dev-server
:
npx webpack-dev-server --config webpack.config.js
其中,webpack.config.js
为你的webpack
配置文件。运行成功后,会自动打开浏览器,显示你的页面。
示例
示例一
以下是一个简单的配置示例:
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
filename: 'main.js',
path: path.resolve(__dirname, 'dist'),
},
devServer: {
contentBase: path.join(__dirname, 'dist'),
compress: true,
port: 9000,
open: true
}
};
其中,入口文件为./src/index.js
,输出文件为./dist/main.js
。开启webpack-dev-server
后,服务器的文件根目录为./dist
,使用的端口为9000
,并在浏览器中自动打开页面。
示例二
另一个示例如下:
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist'),
},
devServer: {
contentBase: path.resolve(__dirname, 'dist'),
compress: true,
port: 8080,
hot: true
},
module: {
rules: [
// ... 其他规则
{
test: /\.css$/,
use: [
'style-loader',
'css-loader'
]
}
]
}
};
该示例中,入口文件为./src/index.js
,输出文件为./dist/bundle.js
。开启webpack-dev-server
后,服务器的文件根目录为项目根目录下的./dist
目录,使用的端口为8080
。还在配置文件中添加了一个css-loader
,用于处理CSS文件。此外还开启了热更新,即在修改代码后页面不刷新即可看到修改效果。
以上是使用webpack-dev-server
在本地搭建服务器的完整攻略,希望对您有所帮助。
本文标题为:webpack-dev-server搭建本地服务器的实现
基础教程推荐
- 一起学习html_01html基本标签 2023-10-27
- Win10预览版16299.461更新内容汇总 2024-04-08
- JavaScript插件Tab选项卡效果 2024-04-09
- 纯CSS如何禁止用户复制网页的内容 2024-04-08
- 30.vue的安装 2023-10-08
- 如何在MySQL函数中将SQL选择查询转换为格式化的HTML表 2023-10-27
- vue cli4.0 快速搭建项目详解 2023-10-08
- ajax实现excel报表导出 2023-02-23
- css 单选按钮图标替换的方法 2024-03-31
- 关于 extjs4:Extjs Grid 面板 – 使用 hideable=false 2022-09-15