internet-explorer - 在 Ember.js 中填充 Object.entries 的推荐方法是什么?
问题描述
我的一些用户使用不支持Object.entries
. 我仍想支持该浏览器,但我Object.entries
在我的代码库中的多个地方使用。
我看到有可用的垫片。在 Ember 中放置这个 shim 的最佳位置是哪里?
谢谢!
解决方案
我个人会将其放入初始化程序中。我喜欢它,因为它很隐蔽,以后很容易移除。
ember generate initializer object-entries-polyfill
应用程序/初始化程序/object-entries-polyfill.js
export function initialize(application) {
//from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries#Polyfill
if (!Object.entries) {
Object.entries = function( obj ){
var ownProps = Object.keys( obj ),
i = ownProps.length,
resArray = new Array(i); // preallocate the Array
while (i--)
resArray[i] = [ownProps[i], obj[ownProps[i]]];
return resArray;
};
}
};
export default {
initialize
};
推荐阅读
- javascript - 如何在angularjs中保留空格?
- emacs - 如何在组织模式(emacs)中创建子标题?
- php - Symfony 4 守卫不验证用户
- javascript - 我如何用js为列表项倒计时?
- ruby-on-rails - “存档”是 Rails 或 SQLite3 中的保留字吗?
- javascript - 如何'将一个对象解析并转换为另一个具有不同“键/值”结构的对象'
- excel - 将单元格中的汉字和字母写入 .CSV
- telegram-bot - 如何通过 Telegram Bot 发送文件
- angular - 单击子组件上的任何按钮时可以在角度调用父组件功能吗?
- javascript - 针对特定更改重新加载整个反应应用程序