APP 结构设计经验
数据列表
基本
- 过长字数显示
- 页面初始化时,应显示占位块
- 错误处理的代码应放在最外层的调用位置。底层应使用 Error 类向外层传递错误信息
- 事件函数以 on 开头,不控制显示的 store data
- 数据处理单独提取为函数,控制显示的 store data
- service 层处理网络请求
加载状态,建议使用 Symbol
const LoadStatus = {
loading = Symbol('loading'),
loaded = Symbol('loaded'),
loadedAll = Symbol('loadedAll'),
hasError = Symbol('hasError')
}
数据数组处理
- 数组初始值为
null
; - 初次加载时,往数组尾部追加;
- 加载更多时,往数组尾部追加;
- 下拉刷新,往数组前部追加。
可以创建加载列表的方法,使用 flag 标识 往前 还是 往后 追加数据。
request 库封装:
- 是否需要登录;
- 是否显示加载动画,以及文字提示(默认机制);
- 超时处理;
- 重试机制,包括 401重试 和 请求失败 重试;
- 仅在正常数据请求进入 reslove,请求发起失败或者响应错误进入 reject。
数据缓存
待更新