webpack-hot-middleware
Node.js サーバーでとwebpack-dev-middleware
ライブラリの両方を使用して、Webpack ホット リロードを利用できる TypeScript で記述されたプロジェクトがあります。
また、パブリック ディレクトリに 1 つの CSS ファイルを生成する Stylus コード (Gulp を使用したインクリメンタル ビルド) 用に構成されたすべてのビルド手順が既にあります。
したがって、TypeScript のものには既に Webpack のホット リロードがあるので、CSS にも Webpack のホット リロードを利用したいと思いますが、CSS ファイルをビルドしたくありません。理想的には、単一の CSS ファイルが変更されるたびに Webpack がホット リロードするようにしたいだけです。それを達成するための最も簡単で最良の方法は何ですか?
現在の構成ファイルは次のようになります。
const webpack = require('webpack');
module.exports = {
entry: [
'webpack-hot-middleware/client',
'./src/client/index.tsx'
],
output: {
path: '/public/js/',
filename: 'bundle.js',
publicPath: '/js/'
},
resolve: {
extensions: ['', '.webpack.js', '.web.js', '.ts', '.tsx', '.js']
},
module: {
loaders: [
{
test: /\.tsx?$/,
loader: 'ts-loader'
}
]
},
plugins: [
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.HotModuleReplacementPlugin()
];
};
そして、Webpack Hot Middleware と Webpack Dev Middleware を次のように使用します。
const webpackConfig = require('../webpack.config');
const compiler = webpack(webpackConfig);
app.use(webpackDevMiddleware(compiler, { noInfo: true, publicPath: webpackConfig.output.publicPath }));
app.use(webpackHotMiddleware(compiler));