假设我有这样的屏幕:
<screen>
<button label="Foo" name="foo-button"/>
<action:behaviors>
<action:when widget-event="foo-button.onClick">
<action:call-ajax-workflow name="ajax/do-lots-of-foo"/>
<!-- (1) -->
<action:call-ajax-workflow name="ajax/do-less-foo"/>
<!-- (2) -->
</action:when>
<action:when system-event="onAjaxRequestCompleted">
<!-- (3) -->
</action:when>
</action:behaviors>
</screen>
为每个 AJAX 请求放置处理程序的正确位置是什么?从理论上讲,我会假设 (1) 或 (2) 都不正确,就好像工作流是真正异步的,那么ajax/do-less-foo
应该在ajax/do-lots-of-foo
.
我的直觉是处理位置 (3) 的响应,并根据 的值有条件地执行不同的代码event-parameters.workflow
。
这个对吗?还是call-ajax-workflow
实际上是阻塞,而阻塞中的命令onClick
只是串行执行?