13

我正在使用 Facebook 的反应。不确定是什么导致了这个错误,接缝会自己反应吗?

我收到一个 IE8 脚本错误:Object doesn't support this property or method on line 10898 for react.js

我没有使用缩小版,这是评论的开发版。还有其他人对 Facebook 的反应在 IE8 中不起作用有疑问吗?想知道是否有某种设置必须用于响应在 IE 中工作???

4

2 回答 2

21

确保添加本页末尾列出的 polyfill:Refs and the DOM

另请注意,JSXTransformer.js 目前与 IE8 不兼容,因此您确实需要预编译 JSX。

于 2013-10-09T04:11:15.110 回答
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 构建而不是尝试正确捆绑它就取得了更大的成功。

于 2015-04-27T00:44:30.603 回答