我应该从服务器拉出还是只更新视图?

时间:2015-05-08 06:08:38

标签: javascript ajax

在网站上使用Ajax,我通过视图更改数据。我将此数据发送到服务器,以便保存。我的步骤概述如下:

  1. 用户更改视图上的数据。
  2. Javascript触发器。
  3. 在ajax调用之前
  4. Ajax通话。服务器保存数据。
  5. ajax call
  6. 之后

    我的问题是:在设计方面,更新第3步中的视图,然后更新数据并让数据可能不同步,直到刷新或进行ajax调用,然后返回来自服务器的数据并使用第5步中的视图更新视图?

    我目前已经实施了第一个选项,因为它更简单,只是流动了#34;对我来说更好,但第二个似乎更好,因为用户将始终从服务器获取最新数据。

2 个答案:

答案 0 :(得分:1)

可用性一致性。这取决于您是否想要更多可用或一致。如果出现问题并且无法在服务器端更新信息会发生什么情况,您的用户会生气吗?或者,如果用户看不到内容的正确价值,他们可能会生气?你必须决定一个或另一个。这是关于这种情况的文章Consistency vs. availability: eventual consistency by Werner Vogels

答案 1 :(得分:0)

IMO在步骤3中更新数据,但显示一些通知说“将数据保存到服务器”或只是加载gif。然后进行ajax调用并让它返回操作状态(如果数据保存正确则为OK,否则为错误),读取响应并隐藏保存数据div或在出错时从服务器提取数据。

这样用户就不必等待ajax调用或刷新。它会更好地流动,你可以有效地处理错误