1

我有以下功能:

export default function(path, urlKey = 'static') {

    if (urlKey === 'static') {
        path = require(`~/static${path}`).default;
    }

    urlKey = Object.keys(config.app.urls).includes(urlKey) ? urlKey : 'static';

    return (config.app.urls[urlKey] + '/' + path).replace(/([^:]\/)\/+/g, "$1");

};

如您所见,我正在使用require我认为利用require.context. 当我的 webpack 打包时,它会构建静态文件夹中的所有文件。~/static路径的一部分是static根目录中我的文件夹的别名。

使用watchwebpack 的模式时,打包进入死循环。

我尝试了各种方法,例如watchOptions.ignored和 ,WatchIgnorePlugin但这些都没有奏效。

这是我对上述解决方案的两次尝试:

watchOptions: {
    ignored: /static/
}

plugins:[
    new WatchIgnorePlugin([
        path.resolve(__dirname, '..', 'static')
    ]),
]

谁能建议我在这里缺少什么?

4

1 回答 1

0

我也一直在经历无休止的重建问题。经过多次尝试,我终于能够通过在webpack.dev.config.js中使用WatchIgnorePlugin来排除静态文件夹:

devWebpackConfig = merge(baseWebpackConfig, {
  ...
  plugins: [
    ...
    new webpack.WatchIgnorePlugin([
      path.resolve(__dirname, '../static')
    ])
  
于 2021-04-26T15:08:13.187 回答