Webpack配置-正在检索[name]作为mini-css-extract-plugin中的变量

icnyk63a  于 2022-11-13  发布在  Webpack
关注(0)|答案(1)|浏览(163)

我正在尝试根据[name]为我的JS和CSS文件设置文件名。我的webpack设置看起来像下面的代码。在输出文档(https://webpack.js.org/configuration/output/#outputfilename)中,它显示[name]可以通过“pathData.chunk.name“访问。我也想在MiniCssExtractPlugin中为我的CSS文件做同样的操作,但无法找到[name]存储在哪个变量中。
谁能给我点提示?
提前谢谢你!珍娜

module.exports = {
  ...
  output: {
    filename: (pathData) => {
      return pathData.chunk.name === 'main' ? '[name].js' : '[name]/[name].js';
    },
  },
  ...
  plugins: [
    ...
    new MiniCssExtractPlugin({
      filename: chunk.name ? '[name].css' : '[name].' + thisConfig['version'] + '.css',
      chunkFilename: '[id].css',
    }),
  ]
falq053o

falq053o1#

您已经接近了。您需要更新对chunkname的引用。

new MiniCssExtractPlugin({
    // do this for your output and/or the plugin as needed
    filename: (pathData) => {
      if (pathData.chunk.name.includes('main')) {
        pathData.chunk.name = /* do something with pathData.chunk.name */;
      }
      // return the thing you've updated
      return `styles/bundle-${version}-[name].css`;
    },
  }),

相关问题