'Set'或'Map'在IE9 ReactJs中未定义



我用react 16.2.0创建了一个简单的应用程序,当我在IE9上执行/运行时,它向我显示控制台错误"Set"或"Map"未定义。

我发现在IE9上运行我的反应应用程序需要一些polyfill。我遵循以下步骤,它对我有用。由于 React 16 取决于集合类型映射和设置。如果您支持的旧版浏览器和设备可能尚未原生提供这些功能(例如 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')
);

如果它不起作用,您还必须为设置和映射查找并添加 pollyfill。

最新更新