比如 react - redux 下的 spa 应用。 在发起一个请求 action 的时候,数据并没有返回,应用用的是 reducer 里边的默认 state 。
加入有个路径: state.user.schools[].location ,如果数据没有从服务器端回传,那么 schools 字段应该是 undefined ,这时候应用去访问 schools[].location 就会报错。
类似这种多级的 json 结构,有没有什么比较好的办法规避这个问题? 目前我想到几个方法:
1.把复杂数据结构给拉平。但是如果结构本身就比较复杂,那么拉平并不合适。 2.默认的 state 填满每个字段的默认值。 3.在界面上访问字段前,先去判断 state.user.schools[]是否存在,然后再访问这个值。
但是感觉上边几个解决方式依然不是很适合。