14

我想使用 Webpack 的 React Loadable 在 ReactJs 中实现 SSR。以下是 package.json 文件中的几行:

const { ReactLoadablePlugin } = require('react-loadable/webpack');
plugins:[
    new ReactLoadablePlugin({
        filename: path.resolve(__dirname, 'dist', 'react-loadable.json')
    }),
]

但我得到以下错误:

> [webpack-cli] TypeError: compiler.plugin is not a function
at ReactLoadablePlugin.apply

我该如何解决?

4

2 回答 2

14

我有同样的错误,但在使用Webpack 5的NodeJs中存在webpack-shell-plugin 依赖项,所以我的修复是删除webpack-shell-plugin并添加webpack-shell-plugin-next

npm install --save-dev webpack-shell-plugin-next

webpack.config.js文件:

const WebpackShellPluginNext = require('webpack-shell-plugin-next');

module.exports = {
 ...
plugins: [
    new WebpackShellPluginNext({
      onBuildStart:{
        scripts: ['echo "===> Starting packing with WEBPACK 5"'],
        blocking: true,
        parallel: false
      },
      onBuildEnd:{
        scripts: ['npm run yourCommand'],
        blocking: false,
        parallel: true
      }
    })
  ]
}

我希望此修复程序可以帮助您或可以帮助某人。

于 2021-04-10T01:54:25.133 回答
5

问题很可能是您尝试将 Webpack 4 插件与 Webpack 5 一起使用,只是 Webpack 有无信息的错误消息。尝试升级 ReactLoadablePlugin。

于 2021-02-04T00:12:21.593 回答