所以我有一个for / in循环将一个对象转换为一个对象数组,用于React typeahead组件:
const languageOptions = []
for (const language in i18n.store.data[i18n.language].translation.languages) {
languageOptions.push({
id: language,
label: i18n.store.data[i18n.language].translation.languages[language],
})
}
但是,我收到了一个eslint错误:Using 'ForInStatement' is not allowed (no-restricted-syntax)
我现在希望如何进行此类转换?
答案 0 :(得分:1)
const languageOptions =
Object.entries(i18n.store.data[i18n.language].translation.languages)
.map(([id, label]) => ({id, label}))
假设您不需要原型链更远的可枚举属性。如果这样做,请关闭ESLint规则。 =)