前后端分离时,要尽量保证后端返回的数据格式是一致的。
数据格式不一致的情况,比如:如果存在子元素,则返回children列表
{
code : 200,
title : xxx,
children : [
{a},
{b}
]
}
那么在不存在 children 时,将只返回:
{
code : 200,
title : xxx
}
此时,前端需要判断,是否存在 children 子元素,然后再判断它的值。(虽然js可以直接判空,但 children 中的每一项,也可能复杂结构元素,或直接在 vue 中绑定了)
如果数据不存在时,返回空数组,或许会更好处理,另外看 起来也更规范。
{
code : 200,
title : xxx,
children : []
}
接口的多状态。
比如返回一个page对象时,当数据为空,此时应该返回一个状态码,而不仅仅是空数组
{
pageInfo:{...},
list:[]
}
如果仅仅返回空数组,则需要判断 list 长度 或 pageInfo 里的数据,没有数据是一种特殊情况,可以给一个特殊状态码
{
pageInfo:{...},
list:[],
state : 2001
}