我正在使用 facebook 的react。不确定是什么导致了这个错误,接缝会自己做出react吗?
我收到 IE8 脚本错误:对象不支持 react.js 的第 10898 行上的此属性或方法
我没有使用缩小版本,这是评论的开发版本。还有其他人对 facebook 的 react 无法在 IE8 中工作有疑问吗?想知道是否有某种设置必须用于响应才能在 IE 中工作???
我正在使用 facebook 的react。不确定是什么导致了这个错误,接缝会自己做出react吗?
我收到 IE8 脚本错误:对象不支持 react.js 的第 10898 行上的此属性或方法
我没有使用缩小版本,这是评论的开发版本。还有其他人对 facebook 的 react 无法在 IE8 中工作有疑问吗?想知道是否有某种设置必须用于响应才能在 IE 中工作???
确保添加本页末尾列出的 polyfill:Refs 和 DOM
另请注意 JSXTransformer.js 当前与 IE8 不兼容,因此您确实需要预编译 JSX。
我遇到了同样的问题,事实证明这是因为我构建包的方式。
如果你使用 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 构建而不是尝试正确捆绑它就取得了更大的成功。