我正在构建一个音乐播放器应用程序,我正在使用REST API从各个 endpoints (播放列表,某个用户发布的曲目等)中获取曲目 .
我'm using redux and normalizr to manage my state. I'已经创建了一个 tracks
实体,我用它来映射 track
对象及其ID .
总之,我的州看起来有点像这样:
{
playlists: {
123: { id: 123, name: 'foo', tracks: [1, 2, 3] }
},
users: {
me: { name: 'Niek', tracks: [2, 3] },
},
entities: {
tracks: {
1: { name: 'bar', user_favorited: false, ... },
2: { name: 'foo', user_favorited: false, ... },
3: { name: 'bar', user_favorited: true, ... }
}
}
}
到目前为止,这对我来说非常有用 . 但现在我正在构建通过调用另一个API endpoints 来切换轨道的 favorite
状态的功能 .
此 endpoints 不包括响应中的整个 track
资源,但我确实希望在API调用成功后更新单个 track
实体的 user_favorited
属性 .
实现这一目标的最佳方法是什么?
作为一种解决方法,我现在在 user_favorited
endpoints 调用成功后再次从另一个 endpoints 获取整个 track
实体,但我希望找到一个优雅的解决方案,这是没有必要的 .