我正在使用facebook的反应。不确定什么导致这个错误,接缝会自己做出反应?
我收到一个IE8脚本错误:对象不支持10898行上的这个属性或方法react.js
我没有使用缩小版本,这是评论的开发版本。有问题的其他任何人的反应不适用于IE8?想知道是否有某种设置必须用于在IE中工作?
答案 0 :(得分:21)
确保添加本页末尾列出的填充物:
http://facebook.github.io/react/docs/working-with-the-browser.html#browser-support-and-polyfills
另请注意,JSXTransformer.js目前与IE8不兼容,因此您需要预编译JSX。
答案 1 :(得分:2)
我遇到了同样的问题,事实证明这是因为我正在构建捆绑包。
如果您使用的是webpack或browserify,则需要“envify”它。代码库中有些地方看起来像这样:
if (process.env.NODE_ENV !== "production") {
doSomethingNotIE8Compatible()
}
要删除这些,react构建使用envify browserify转换来将process.env.NODE_ENV
实例替换为带有本地终端环境变量值的字符串。
例如,第一行变为:
if ("production" !== "production")
在此之后,您应该使用uglify删除死代码以保存大小。
最后,您需要通过ES3-ifer运行代码,以摆脱ES5中合法而非ES3的一些小事。例如,catch
函数调用。
TLDR:在我的公司,我们使用CDN构建取得了更大的成功,而不是试图正确捆绑它。