ajax - 将多个 Action 组合在一起的最佳方法(作为一个事件)

标签 ajax action grouping

在工作中,我们使用 Web 应用程序 (attask.com) 来记录项目和任务等。它具有许多不错的功能,例如评论和状态更新(在您认为我出售它之前就停止了!)

任何人,在网站上,您可以更新项目的状态,这是通过 ajax 保存的。不久之后,我就可以对该项目发表评论了。在这个项目的更新部分,这两个 Action 将一起出现,就好像它们是作为一个执行的一样......

如果你要执行相同的功能,你会怎么做?

我想到的一种方法是在页面加载时有一个隐藏框并在其中存储一个 GUID。取消页面加载。然后,任何 ajax 调用在发回数据时都会使用此 GUID,因此可以以这种方式对事物进行分组。

但我想听听其他人的想法,或者如果他们不得不做类似的事情,他们是如何去做的

最佳答案

假设通过登录系统没有用户身份的概念,传递给呈现页面上的 javascript 变量的 guid 将提供一个简单的解决方案。没有必要在容器内隐藏类似的东西。

执行操作时,guid 将与 AJAX 请求一起发送。收到 Action 后,服务器可以检查具有相同 guid 的用户执行的先前 Action 是否在 x 秒内发生。如果是这种情况, Action 将被视为一对,“feed”模型将相应更新。

我构建类似东西的唯一经验是不需要用户注册来选择日历上的日子的事件策划者。日期的选择是由 AJAX 执行的,因此有必要根据加载时传递给页面的 guid 来确定要更新数据库中的哪个日历。

还值得注意的是,您实际上并不需要“guid”,任何唯一的字符串都可以。

关于ajax - 将多个 Action 组合在一起的最佳方法(作为一个事件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7507768/

相关文章:

java - Java Swing 中是否有 "Group Box"等效项?

javascript - HTML 中的 AJAX POST 方法

javascript - 如何使用javascripteach()对数据进行排序

mysql - 在对一列(或一组列)A进行分组时,如何获取每组A中一列(或一组列)B的最常见值?

grails - 转发 Action 时没有保存?

c# - 委托(delegate)给实例方法不能有 null 'this'

c# - 按未知的初始前缀分组

PHP/Javascript - 更改按钮图像并调用数据库 onClick()?

jquery - JSESSIONID Cookie 被拒绝/丢失

javascript - 在redux-observable中异步添加epic到中间件