js-data-http中的find method似乎有一个特殊情况,如果item
falsey ,那么它将拒绝承诺,否则返回{{1 }}。我的问题是,某些 falsey 值(item
,0
,null
)是来自我的API的有效回复。
例如,如果我要求一个尚未设置的关系,那么API将回复包含在jsonapi信封中的数据''
。这是在获取空关系的jsonapi spec之后:
null
我正在使用js-data-jsonapi库来帮助js-data和jsonapi相处。在那个图书馆里,DeSerializer打开了jsonapi信封。此时,js-data重新负责,未展开的数据{
"links": {
"self": "/articles/1/relationships/author",
"related": "/articles/1/author"
},
"data": null
}
是查找承诺解析方法中null
的值,导致js-data-http拒绝承诺。
现在我正在利用special case in js-data-jsonapi将空数据反序列化为数组,因为在JS Arrays中 truthy 。但是我必须特殊情况下检测hasOne关系,现在一个空数组必须是re-converted into null。
这似乎是处理事情的过于复杂的方式,有没有更好的方法让我失踪?
我的设置使用:
item