我应该在组件之间传递 json 还是 dom-nodes?
Should I rather pass json or dom-nodes between components?
我正在使用 useContext 和 setState 挂钩在我的网站上共享一组音轨。我有一些播放列表组件可以 add/remove 跟踪到全局播放列表以及音频元素的包装器,例如可以当前结束时检索下一首曲目。
播放列表都使用相同的组件。每个轨道基本上只是一个 <tr>
和 <td>
包含 id、标题、url.. 等等。我使用 json.
生成这些
现在我的问题是我应该在我的钩子中传递什么?因为我看到至少 3 个选项...我可以通过
传递 track_id 似乎最有效但是..但是每当我需要曲目数据时..例如要获取 url 或进行渲染,我需要找到 object,它可以嵌套在我的 json 后端中的任何位置。
传递 dom-node 似乎是错误的...但如果我想在其他地方呈现列表,将非常容易使用。
如果你通过曲目json object..我随时都有我需要的所有数据..但我需要以某种方式将它附加到所有曲目dom 节点..这又似乎不对..
选项#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.
我正在使用 useContext 和 setState 挂钩在我的网站上共享一组音轨。我有一些播放列表组件可以 add/remove 跟踪到全局播放列表以及音频元素的包装器,例如可以当前结束时检索下一首曲目。
播放列表都使用相同的组件。每个轨道基本上只是一个 <tr>
和 <td>
包含 id、标题、url.. 等等。我使用 json.
现在我的问题是我应该在我的钩子中传递什么?因为我看到至少 3 个选项...我可以通过
传递 track_id 似乎最有效但是..但是每当我需要曲目数据时..例如要获取 url 或进行渲染,我需要找到 object,它可以嵌套在我的 json 后端中的任何位置。
传递 dom-node 似乎是错误的...但如果我想在其他地方呈现列表,将非常容易使用。
如果你通过曲目json object..我随时都有我需要的所有数据..但我需要以某种方式将它附加到所有曲目dom 节点..这又似乎不对..
选项#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.