我用 react 16.2.0 创建了一个简单的应用程序,当我在 IE9 上执行/运行它时,它显示控制台错误“设置”或“地图”未定义。
IE9 ReactJs 中未定义“Set”或“Map”
IT技术
reactjs
internet-explorer-9
2021-05-27 03:37:46
2个回答
我发现在 IE9 上运行我的 React 应用程序需要一些 polyfill。我按照以下步骤操作,它对我有用。由于 React 16 依赖于集合类型 Map 和 Set。如果您支持可能尚未原生提供这些功能的旧版浏览器和设备(例如 IE < 11),请考虑在您的捆绑应用程序中包含全局 polyfill,例如 core-js 或 babel-polyfill。
我们还必须使用 requestAnimationFrame polyfill 库,它是raf
npm install --save raf
索引.js
import 'core-js/es6/map';
import 'core-js/es6/set';
import 'raf/polyfill';
import React from 'react';
import ReactDOM from 'react-dom';
ReactDOM.render(
<h1>Hello, world!</h1>,
document.getElementById('root')
);
如果它不起作用,您还应该为 set 和 map 查找并添加 pollyfills。