我创建了一个 Web 应用程序,并且正在使用 pug 文件生成我的 index.html。
pug 模板需要从 json 文件中获取数据,到目前为止,我设法使用 pug-loader 和 pug-html-loader 注入数据。
当我使用热重载(使用 webpack-hot-middleware)运行应用程序时,问题就来了。当我更改 json 文件时,应用程序不会重新加载,这真的很烦人,因为任何其他文件更改都会触发重新加载,而且我不想在每次更改 json 文件时手动重新启动应用程序。
这是我的 webpack 配置:
{
context: '/src',
entry: 'index.js',
output: {
filename: 'index.js',
path: '/dist'
},
resolve: {
extensions: ['.js', '.vue', '.scss', 'json'],
alias: {
'vue$': 'vue/dist/vue.esm.js',
'@': config.pwd,
}
},
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: {
loaders: {
scss: [
'style-loader',
'css-loader',
'sass-loader',
{
loader: 'sass-resources-loader',
options: {
resources: ['./src/variables.scss', './src/mixins.scss']
}
}
]
}
}
},
{
test: /\.scss$/,
use: [
'style-loader',
'css-loader',
'sass-loader',
{
loader: 'sass-resources-loader',
options: {
resources: ['./src/variables.scss', './src/mixins.scss']
}
}
]
},
{
test: /\.pug$/,
use: [
{
loader: 'pug-loader',
options: {}
}
]
}
]
},
{
[
new HtmlWebpackPlugin({
template: 'index.pug',
inject: true,
data: require('./pug.json')
})
]
}
}
有谁知道我如何更改 pug.json 触发热重载?