dictionary - 在 React 中迭代不可变映射的键

标签 dictionary reactjs immutability

通过 Immutable.js Map 对象处理迭代的良好实践是什么?这有效:

{stocks.map((stock,key)=>{
    return ( <h3>{key}</h3> )
})}

但在控制台中给出警告“warning.js:45 警告:尚未完全支持使用 Maps 作为子项。这是一个实验性功能,可能会被删除。将其转换为键控 ReactElements 的序列/可迭代。 ”

这之前已经讨论过,此链接建议了一些策略 https://github.com/facebook/immutable-js/issues/667但它们对我来说似乎很笨重。喜欢:

posts.entrySeq().map(o => 
     <Post value={o[1]} key={o[0]} />
)

可以工作,但感觉很笨重。有更自然的方法吗?

最佳答案

自从您提出这个问题以来,您引用的 github 问题上已经发布了更好的解决方案。 @vinnymac 建议:

posts.entrySeq().map( ([key, value]) => 
  <Post key={key} value={value} />
)

这很有效,因为 entrySeq() 返回一个键/值元组序列,然后您可以在 .map() 回调的参数中对其进行解构。

编辑我现在看到您只是索要 key 。在这种情况下,如果您想使用 ImmutableJS map(),请使用 keySeq();如果您想使用 ES6 ,请使用 keys() map ()

关于dictionary - 在 React 中迭代不可变映射的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36669710/

相关文章:

java - 如何同时更新缓存的 Java 对象

reactjs - 我是否在此 React Hooks Reducer 中处理状态更新?

python - 在python中将字符串转换为字典

javascript - 将模板文字转换为字符串

javascript - react 表中的自定义 "Previous"和 "Next"文本

javascript - 在 react 中使用事件

python - 不可变与可变类型

python - 如何根据索引将来自不同字典的 pandas 现有列的值求和?

Python 可以在内存中创建大型字典,但不能从文件中加载它们

python - 如何从包含多个键的字典中获取值?