Leooonard / Notes

2 stars 0 forks source link

canbuy新功能 #18

Open Leooonard opened 8 years ago

Leooonard commented 8 years ago

todo

  1. 结构
  2. 测试用例
  3. 如何重构

顺序无关情况: 拉数据 渲染html 整理优先级 绑定事件

顺序有关情况: 确定一共要拉几条数据 拉数据,并告诉hub。 拉成功或拉失败后,hub告诉视图更新界面。 视图渲染html。 视图绑定事件。

数据: 拉数据,四种情况。

  1. 不应该拉,告诉hub,我不拉,我的type是。
  2. 应该拉,告诉hub,我开始拉了。
  3. 拉成功,告诉hub,我拉成功了,我的type是。
  4. 拉失败,告诉hub,我拉失败了,我的type是。 一些纯数据的if else在数据层做。数据层只能和hub交互。

hub: 集成n个拉数据对象,为他们做排序。hub需要知道总数n是多少。

  1. 根据数据端调用的方法,记录现在正在拉的有多少,还未拉的有多少,放弃拉的有多少。
  2. 根据数据端调用的拉成功或拉失败方法,更新视图。
  3. 根据数据端调用的方法确定所有数据对象已经开始了拉取动作,无论是成功失败还是直接放弃。一旦全部结束,通知视图,进行最终更新。

视图: 根据hub调用的方法,进行不同形式的数据展示。 关于视图这里还有几个疑问。

  1. 当渲染了之后,全部数据到之前,用户可不可以拖动?可以拖动的话交互要确定。
  2. 当第一个到之后,渲染首屏。后面的要渲染第二屏吗?还是等全部完了再渲染第二屏。

业务来说,有一个问题。carRental到底是怎么个业务逻辑?