使用 React 转换语言中的值 iso 语言代码

Converting the values iso languages code in languages with React

我正在考虑如何转换我现有的数据模拟,其中我有 ISO 代码,我想将其转换为语言名称。

我正在使用 => https://github.com/pubcore/iso-language-codes(自述文件实际上有 2 个小错误,示例不是从 iso-language-codes 导入并且 code = iso639_2T['fra'] 应该是代码 = by639_2T['fra']

这是我的模拟数据:

export const dataForSubtitlesMenu = [
  { value: 'Lingue Audio', title: true, id:1},
  { value: 'ita', id: 2},
  { value: 'eng', id: 3},
  { value: 'fra', id: 4},
  { value: 'ben', id: 5},
  { value: 'gla', id: 6},
  { value: 'ind', id: 8},
  { value: 'nor', id: 9},
  { value: 'rus', id: 10},
  { value: 'slv', id: 11},
]

这是我的app.js

<Dropdown title="Seleziona lingua e sottotitoli" items={dataForSubtitlesMenu}/>

Dropdown.js我喜欢这样

<ul className="dd-list">
  {items.map((item, i) => (
    <ListItem
      item={item}
    />
  ))}
</ul>

没有示例和清晰的演示,我如何使用此模块 iso-languages-code 将我的值转换为语言代码?有没有其他更好的节点可以用我现有的数据模拟来实现这个?

您似乎只想为该库中的每种语言创建一个条目?

如果是这样,默认导出的只是一个包含所有数据的数组。所以你应该能够:

import codes from 'iso-country-codes'

export const dataForSubtitlesMenu = [
  // Add the prompt item
  { value: 'Lingue Audio', title: true, id:1},

  // Fill the rest of the array with an item for every language.
  ...codes.map((lang, i) => ({
    value: lang.iso639_2T,
    id: i + 2, // i starts at 0, id 1 is the prompt.
  })
]