我正在使用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}
现在,我显然希望遵循最佳实践并尽可能地高效。.所以有人可以指出我正确的方向
答案 0 :(得分:0)
我认为所有人都会做同样的事情。如果传递id或json,则仍需要在dom节点中进行渲染才能查看,因此当您说传递dom节点时,您实际上只是传递了字符串。我是否正确地说,无论通过什么,都需要通过某种功能才能从后端获取歌曲?如果是这样,那么我的建议是json。