最近接触到新的项目,然后发现使用的Antd4.1.4版本存在一个BUG会影响到业务系统,于是在各种考虑下还是升级到最新版4.5.0。

然后就发现发布到线上测试环境就遇到某些页面会报错,但是本地又是好的,错误如下:

Minified React error ...

然后搜了一下,网上都表示是因为项目内部依赖的React版本存在多个导致的这个问题,可以通过配置webpack的externals属性,将所有的react依赖不进行打包,然后通过地址引入来解决。

确实可以通过这个方式来解决,而且本身去掉这些依赖后的打包速度还会很快,是一个不错的解决方案。

大致代码如下:

// webpack.config.js

module.exports = {

// ...

externals: {

react: {

commonjs: 'react',

commonjs2: 'react',

amd: 'react',

root: 'React',

},

'react-dom': {

commonjs: 'react-dom',

commonjs2: 'react-dom',

amd: 'react-dom',

root: 'ReactDOM',

},

}

};

但是我使用了另一种方式,就是我讲测试环境的所有依赖包清除,然后再重新安装一遍最新的依赖,然后问题也解决了。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐