Как поместить имя записи в имя файла чанка? (веб-пакет)
Мои файлы:
page1.js
import nameFunction from "./nameHelper"
page2.js
import nameFunction from "./nameHelper"
import users from "./users"
page3.js
import users from "./users"
Что я получаю:
│ package.json
│ page1.html
│ webpack.config.js
│
├───dist
│ └───scripts
│ page1.js
│ page2.js
│ page3.js
│ Scripts_js_nameHelper_js.js
│ Scripts_js_users_js.js
└───Scripts
└───js
nameHelper.js
page1.js
page2.js
page3.js
users.js
Что я хочу:
├───dist
│ └───scripts
│ page1.js
│ page2.js
│ page3.js
│ page1_page2_nameHelper.js
│ page2_page3_users.js
Конфигурация Webpack 5:
module.exports = {
entry: {
page1: "./Scripts/js/page1.js",
page2: "./Scripts/js/page2.js",
page3: "./Scripts/js/page3.js",
},
output: {
filename: "[name].js",
path: path.resolve(__dirname, dirName),
},
// devtool: "source-map",
module: {
rules: [
{
test: /\.m?js$/,
exclude: /node_modules|bower_components/,
use: {
loader: "babel-loader",
options: {
presets: ["@babel/preset-env"],
},
},
},
],
},
plugins: [new CleanWebpackPlugin()],
optimization: {
splitChunks: {
chunks: "all",
minSize: 0
},
},
};
Мне это нужно, чтобы легко добавить все связанные файлы в тег скрипта на моих страницах.NET MVC.
<script type="text/javascript" asp-src-include="~/dist/*page1_*.js"></script>
Если нет другого решения добавить только один файл js в тег скрипта на странице. Мне действительно не нравится использовать
HtmlWebpackPlugin
и работать с файлами шаблонов, а не напрямую с
.cshtml
файл.
<script type="text/javascript" src="~/page1.js"></script>
Поскольку входной файл для каждой страницы будет неизменным, а файлы фрагментов будут постоянно менять имена и количество.