我正在使用 normalizr 处理从 Api 收到的数据。当我收到列表时,我得到了预期的标准化实体。
但是当我发送更新一个实体的请求时,我只收到一个包裹在数据信封中的实体,而 normalizr 没有正确处理。
// Normalize setting
import { Schema, arrayOf } from 'normalizr'
export const player = new Schema('players')
export const arrayOfPlayers = arrayOf(player)
//This is what I use for normalize
response => normalize(response, {players: schema.player})
我收到如下数据,列表中只有一名玩家:
{
code: 200,
message: '',
data: {
players: [{
id: 20
username: 'Gamer'
}]
}
}
我应该更改什么以将播放器检索为规范化实体?
更新:
Api 调用示例。
fetch(
url,
{ credentials: 'include' }
)
.then(checkStatus)
.then(response => response.json())
.then(response => normalize(response, {players: schema.player}))
.then( // dispatch redux action )
.catch(function (error) {
})