September 19, 2018

APP 结构设计经验

APP 结构设计经验

数据列表

基本

  1. 过长字数显示
  2. 页面初始化时,应显示占位块
  3. 错误处理的代码应放在最外层的调用位置。底层应使用 Error 类向外层传递错误信息
  4. 事件函数以 on 开头,不控制显示的 store data
  5. 数据处理单独提取为函数,控制显示的 store data
  6. service 层处理网络请求

加载状态,建议使用 Symbol

const LoadStatus = {
  loading = Symbol('loading'),
  loaded = Symbol('loaded'),
  loadedAll = Symbol('loadedAll'),
  hasError = Symbol('hasError')
}

数据数组处理

  1. 数组初始值为 null
  2. 初次加载时,往数组尾部追加;
  3. 加载更多时,往数组尾部追加;
  4. 下拉刷新,往数组前部追加。

可以创建加载列表的方法,使用 flag 标识 往前 还是 往后 追加数据。

request 库封装:

  1. 是否需要登录;
  2. 是否显示加载动画,以及文字提示(默认机制);
  3. 超时处理;
  4. 重试机制,包括 401重试请求失败 重试;
  5. 仅在正常数据请求进入 reslove,请求发起失败或者响应错误进入 reject

数据缓存

待更新