【发布时间】:2018-02-01 15:22:26
【问题描述】:
嗯,我已经构建了一个 Web 应用程序已经有几个星期了,一切都很好。我到了必须在 Internet Explorer 中测试的部分,在所有出现的问题中(除了一个之外,所有的东西都是固定的),不支持 Object.entries()。
我一直在做一些研究并试图提出一个简单的替代方案,但完全没有运气。
更具体地说,我从 API 带来一个对象,以填充 <select></select> 字段的选项,我必须过滤一些信息,就像这样:
Object.entries(this.state.filterInfo.sectorId).map(this.eachOption)
// Function
eachOption = ([key, val], i) => {
return(
<option value={val} key={i}>{val}</option>
);
}
所以除了 Internet Explorer 之外,一切都正常工作。问题是在这个特定的组件中,我渲染了超过 30 个<select></select> 字段。如果有一个不需要我重建所有东西的解决方案,那就太棒了。
有简单的解决方案吗?有办法解决吗?
提前致谢。
【问题讨论】:
-
您是否探索过加载 polyfill?这是缺少此类功能的标准方法。
-
polyfill 相当琐碎。
-
Object.keys(this.state.filterInfo.sectorId).map(this.eachOption,this.state.filterInfo.sectorId)您在回调中获得this[key]的值 -
documentation中显示了一个polyfill
标签: javascript reactjs ecmascript-6