【发布时间】:2015-07-01 22:34:29
【问题描述】:
我正在尝试将 React 与 Internet Explorer 9 一起使用,但即使尝试运行非常简单的东西也会出现以下错误:
SCRIPT438:对象不支持属性或方法“isArray” react-with-addons.js,第 4 行字符 317
SCRIPT438:对象不支持“创建”属性或方法 JSXTransformer.js,第 4 行字符 326
我读过https://facebook.github.io/react/docs/working-with-the-browser.html,上面说IE8 可能有这些问题,但没有提到IE9。谷歌搜索也没有真正提出任何解决方案。
不过,我尝试按照该页面上的建议添加 es5-shim/sham。这会导致不同的错误:
SCRIPT438:对象不支持属性或方法“hasAttribute” es5-shim.min.js,第 6 行字符 4143
以前有没有人在 IE9 或其他环境中遇到过这些错误?
感谢您的帮助!
我要运行的完整代码是:
<html>
<head>
<script src="js/es5-shim.min.js"></script>
<script src="js/es5-sham.min.js"></script>
<script src="http://code.jquery.com/jquery-1.11.2.min.js"></script>
<script src="js/react-with-addons.js"></script>
<script src="js/JSXTransformer.js"></script>
</head>
<body>
<div id="container"></div>
<script type="text/jsx">
React.render(
<h1>HELLO WORLD!</h1>
);
</script>
</body>
</html>
【问题讨论】:
-
我不认为 JSXTransformer 可以在常青浏览器之外工作。它旨在用于演示/早期开发。
-
@FakeRainBrigand 是对的。要获得旧版浏览器支持,您必须捆绑 (browserify/webpack) 以及“envify”和 uglify 捆绑包。它将删除仅用于开发的代码。
标签: javascript internet-explorer-9 reactjs