2017-06-05 50 views
1

我正在为我的ReactJS webapp使用BlueprintJS UI组件。 我想摆脱的警告使用Tree组件来呈现一个文件浏览器时:BlueprintJS树添加键道具

Each child in an array or iterator should have a unique "key" prop. Check the render method of "Tree"

documentation of the Tree component我能找到一个key属性,这可能是我在寻找的东西,但我不能得到警告。

node: [ { hasCaret: true, iconName: "folder-close", label: "Folder 0", key: '1e' } ]

Eveb为树这种简单的结构赋予警告我。有什么建议么?

回答

1

我假设node正在通过Tree所需的contents道具。如果您查看ITreeNodeInterface,则会看到您的对象缺失的必填字段数量。你必须具备以下条件:

  • depth
  • id
  • label
  • path(有问题的,如果这是真正需要的,但:看到这个ticket

你似乎缺少depth,idpath。我不确定path是否真正需要,但对于初学者,您是否可以尝试将depth: 0id: 1e添加到您的对象?你可以摆脱key,因为这是可选的。

另外,该警告并非如此无害。它通常会导致神秘的React行为,因为它无法确定哪些组件实际需要更新。