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

Should I rather pass json or dom-nodes between components?

我正在使用 useContext 和 setState 挂钩在我的网站上共享一组音轨。我有一些播放列表组件可以 add/remove 跟踪到全局播放列表以及音频元素的包装器,例如可以当前结束时检索下一首曲目。

播放列表都使用相同的组件。每个轨道基本上只是一个 <tr><td> 包含 id、标题、url.. 等等。我使用 json.

生成这些

现在我的问题是我应该在我的钩子中传递什么?因为我看到至少 3 个选项...我可以通过

选项#1。 track.json object

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

选项#2。 <tr> dom-node

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

     key={track_id}

现在我显然想遵循 best-practice 并尽可能高效..所以有人可以指出我正确的方向

我想所有人都会做同样的事情。如果你传递一个 id 或 json 那么它仍然需要在一个 dom 节点中呈现才能被查看,所以当你说传递一个 dom 节点时你实际上只是传递一个字符串。我是否正确地说,无论传递什么,都需要通过某种功能从后端获取歌曲?如果是这样,那么我的建议是 json.