LOK*_*321 24 javascript ecmascript-6 internet-explorer-11 reactjs redux
对象无效作为React子对象(找到:具有键{$$ typeof,type,key,ref,props,_owner,_store}的对象).如果您要渲染子集合,请使用数组,或使用React附加组件中的createFragment(object)包装对象.检查渲染方法
App.
AppContainer:
const mapDispatchToProps = (dispatch) => {
return {
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
零件:
class App extends Component {
render() {
return (
);
}
}
Run Code Online (Sandbox Code Playgroud)
以上是app.js的渲染功能.此代码在谷歌浏览器中运行良好,但在访问Internet Explorer时它无法正常工作,它会抛出上述错误.
Fra*_*rel 32
如果你还有这个问题,你可以看看这个关于React 15.4和IE11的#8379问题.我遇到了与webpack dev模式/ IE11/React 15.4相同的问题,似乎React和ReactDom都使用了他们的Symbol polyfill版本(这是15.4的新版本):
某种程度上反应和反应不再"同意"
$$typeof价值应该是
typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103.
我通过重新排序polyfill和react/ react-dom确保在React和ReactDom的符号之前加载polyfill符号来解决这个问题......现在他们在$$ typeof值上"同意".
例如webpack:
entry: [
'babel-polyfill', // Load this first
'react-hot-loader/patch', // This package already requires/loads react (but not react-dom). It must be loaded after babel-polyfill to ensure both react and react-dom use the same Symbol.
'react', // Include this to enforce order
'react-dom', // Include this to enforce order
'./index.js' // Path to your app's entry file
]
Run Code Online (Sandbox Code Playgroud)
在我使用React Native的情况下,我们将这个神秘的bug拖了几个星期才出现在没有附加调试器的Android版本上.
的罪魁祸首是一个
import 'core-js'
在我们的根组件上,似乎polyfill搞砸了
解决方案是简单地删除它,因为在我的情况下不再需要它
相关部分 package.json
"react-native": "0.44.2",
"react": "16.0.0-alpha.6",
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18224 次 |
| 最近记录: |