我应该在组件之间传递json还是dom-nodes?

时间:2019-04-09 21:56:14

标签: json reactjs performance dom-node

我正在使用useContext和setState挂钩在我的网站上共享一系列音轨。我有一些播放列表组件,可以将曲目添加/删除到全局播放列表,还可以包装音频元素,例如当前完成时检索下一首曲目。

所有播放列表都使用相同的组件。每个轨道基本上只是一个<tr>,其中<td>包含id,title,url ..等。我使用json生成这些。

现在我的问题是,我该怎么做?因为我看到至少3个选项,所以我可以通过

  • 传递track_id似乎最有效,但是..但是每当我需要轨道数据时。要获取url或渲染,我需要找到可以嵌套在json后端中任何地方的对象。

  • 通过dom节点似乎是错误的...但是如果我想将列表呈现在其他位置,它将非常易于使用。

  • ,如果您通过track json对象。.我随时都有我需要的所有数据..但我不知何故需要将其附加到所有track dom节点..看来这也不对。

选项1。 track.json对象

     {"title":"...","artist":"...","year":"..."}

选项2。 <tr> dom节点

     <tr><td>title</td><td>arist</td><td>year</td></tr>

     key={track_id}

现在,我显然希望遵循最佳实践并尽可能地高效。.所以有人可以指出我正确的方向

1 个答案:

答案 0 :(得分:0)

我认为所有人都会做同样的事情。如果传递id或json,则仍需要在dom节点中进行渲染才能查看,因此当您说传递dom节点时,您实际上只是传递了字符串。我是否正确地说,无论通过什么,都需要通过某种功能才能从后端获取歌曲?如果是这样,那么我的建议是json。