Часы Webpack не запускаются для файлов HTML
Я использую webpack 3.5.5 и создаю приложение AngularJS с использованием 1.6.6. Я импортирую свой шаблон HTML в мои файлы компонентов следующим образом:
import template from './topic-select.component.html';
Это прекрасно работает, но когда я запускаю webpack в режиме наблюдения, изменения, вносимые в импортированный HTML-файл, никогда не вызывают перекомпиляцию Webpack. Вы можете увидеть мою конфигурацию webpack:
const path = require('path');
const CopyWebpackPlugin = require('copy-webpack-plugin');
const webpack = require('webpack');
module.exports = () => {
return {
context: path.join(__dirname, 'src'),
entry: {
app: './components/app/app.module.js',
libs: ['angular', 'angular-ui-router', 'angular-material']
},
plugins: (() => {
let plugins = [];
plugins.push(
new webpack.optimize.CommonsChunkPlugin({
name: 'libs'
})
);
plugins.push(
new CopyWebpackPlugin([
{ from: 'favicon.ico', to: '../favicon.ico' },
{ from: './icons/*', to: '../' },
{ from: '../mock-data/contact-info.json', to: 'contact-info.json' },
{ from: '../mock-data/contact.xml', to: 'contact.xml' }
])
);
if (process.env.NODE_ENV === 'bamboo') {
plugins.push(
new webpack.optimize.UglifyJsPlugin({
sourceMap: true
})
);
}
return plugins;
})(),
module: {
loaders: [
{
test: /\.js$/,
exclude: /node_modules/,
use: [{ loader: 'ng-annotate-loader' }, { loader: 'babel-loader' }]
},
{
test: /\.html$/,
exclude: /node_modules/,
use: [{ loader: 'html-loader' }]
}
]
},
output: {
filename: '[name].bundle.js',
path: path.join(process.cwd(), 'dist/js')
},
devtool: 'source-map',
watch: process.env.NODE_ENV === 'local'
};
};
Я запускаю это с помощью сценария NPM:
"watch:js": "cross-env NODE_ENV=local webpack --config webpack.conf.js"
Кроме того, я должен отметить, что я не использую dev-сервер webpack, потому что я запускаю свой собственный server.js отдельно. Любая помощь будет очень высоко ценится.