Mat*_*ick 13 ecmascript-6 reactjs webpack babeljs redux
使用Webpack和Babel编译React和Redux应用程序时,我得到:
Uncaught TypeError: Cannot assign to read only property '__esModule' of #<Object>
在某些旧版浏览器中(<= Chrome 1,Android 4,Safari 5).
这个问题似乎源于redux和react-reduxexports.__esModule = true;在lib构建中输出行但我的应用程序使用了Object.defineProperty(因为它们松散地构建而我没有).
两种解决方案是:
在loose模式下构建我的应用程序.
使用与应用程序相同的.babelrc 导入react-redux/src和redux/src构建它(一切都不松散).
只要它们是一致的并且两者都是:
Object.defineProperty(exports, "__esModule", {
value: true
});
Run Code Online (Sandbox Code Playgroud)
并且exports.__esModule = true;不共存于我输出,一切正常.
我的问题是,什么是正确的解决方案?为什么这只影响旧浏览器?为什么他们会发生冲突?
这是一个类似的问题.
我的猜测是,您需要安装babel-plugin-add-module-exports并在.babelrc注册中安装此插件:
"plugins": [
"babel-plugin-add-module-exports"
]
Run Code Online (Sandbox Code Playgroud)
欲了解更多信息,请访问该网站。
| 归档时间: |
|
| 查看次数: |
6189 次 |
| 最近记录: |