因此,当您请求资产时,端点会以类似的方式响应。 Bios只是一个例子。
{
_embedded: {
bios: [
{
name: 'Blorp Gorp',
id: 256,
_links: {},
arrayCollection: [...],
objectCollection: [...],
...
},
...
],
_links: {},
}
而且我想把它压扁到类似的东西,我甚至不确定这是否有意义:
{
results: [256, 257],
entities: {
bios: {
256: {...},
257: {...}
},
arrayCollection: {
256: [...],
257: [...]
},
objectCollection: {
256: {...},
257: {...}
}
}
}
但我无法让Schemas在击中他们的实体之前识别任何嵌套。如果我通过normalize(camelizedJson.embedded.bios, bioSchema)
,它就可以了,但是如果我通过它normalize(camelizedJson.embedded, bioSchema)
我无法理解我想要解析bios
。
我想我可以将另一个变量传递给中间件,使其成功解析嵌入式密钥。
答案 0 :(得分:2)
但我无法让Schema在遇到实体之前识别任何嵌套。如果我通过normalize(camelizedJson.embedded.bios,bioSchema),它可以正常工作,但是如果我传递它normalize(camelizedJson.embedded,bioSchema)我就无法理解我想要解析bios。
您可能需要docker images
。模式可以嵌套在纯JavaScript对象中,例如:
docker images -a
答案 1 :(得分:0)
我认为你需要创建一个模式(这里为假插图名称)“MyArrayThing”和“MyObjectThing”,然后在“Bio”模式定义中定义“arrayCollection”和“objectCollection”子字段使用Normalizr的arrayOf(SomeSchemaObject)
功能。然后,一旦定义了单个Bio对象的外观,您的解析命令也需要大致类似normalize(camelizedJson.embedded.bios, arrayOf(Bio))
。