Я хочу, чтобы иметь возможность удалять старые файлы (в частности, те, которые не найдены в последнем webpack-assets.json). Поскольку новые файлы с хешем созданы, они не заменяют старые, но в то же время я не могу просто очистить весь каталог, так как не все файлы будут заменены.Хеширование в веб-пакете работает, но старые файлы задерживаются на каждой сборке
Мне было интересно, если есть способ избавиться от файлов, которые не находятся в webpack-assets.json
после его обновления. Вот мой конфиг:
var path = require('path');
var webpack = require('webpack');
var ChunksPlugin = require('webpack-split-chunks');
var AssetsPlugin = require('assets-webpack-plugin');
var glob = require('glob');
var assetsPluginInstance = new AssetsPlugin();
// TODO add prefixer for >= IE9
var input_path = __dirname + "/apps/*/index.js";
var output_path = __dirname +'/dist';
// Prepare project paths for multiple projects into entry_files
var projects = glob.sync(input_path);
var entry_files = {};
projects.map(function(project_dir, k){
var split_name = project_dir.split("/");
entry_files[split_name[split_name.length - 2]] = project_dir;
});
module.exports = {
devtool: 'cheap-module-eval-source-map',
entry: entry_files,
module: {
loaders: [
{
test: /\.js$/,
loaders: ['babel'],
exclude: /node_modules/
},
{
test: /\.scss/,
loader: 'style-loader!css-loader?sourceMap!sass-loader?sourceMap'
}
]
},
output: {
path: output_path,
filename: '[name].min.[hash].js'
// filename: '[name].min.js'
},
watch: true,
plugins: [
assetsPluginInstance,
new webpack.optimize.OccurrenceOrderPlugin(),
new ChunksPlugin({
to: 'common.[hash]',
// to: 'common',
test: [/node_modules/, /shared/] // or an array of regex
})
]
};
Обычно путь используется с именем папки, то есть 'выхода: { path: path.resolve (__ dirname, 'dist'), ... ' – redconservatory