0

声明的 SpineJS 目标之一是使整个 UI 不阻塞(即向用户显示更改,即使它可能尚未在服务器端成功更新)。

它可以以标准的“阻塞”方式使用吗?

4

1 回答 1

2

是的,它可以。在“回调”下查看:

http://spinejs.com/docs/ajax

您基本上可以在任何时候阻止 UI,而我这样做是为了处理那些不能推迟到服务器的事情。请注意,我什至不使用 ajaxSucess() 事件,而只是使用事件的自定义绑定。这是元编程中的一个示例用例:

Bind 'clickHandlerFinish' event to clickHandlerFinishWork()
Bind 'click' event on button a to clickHandler()
User clicks on button a
clickHandler() gets fired
clickHandler disables the button and blocks the UI
clickHandler makes an AJAX call to the server to do work
(Remember UI is still blocked)
AJAX call finally returns, and fires the clickHandlerFinish() callback
clickHandlerFinish() unblocks the UI, re-enables the button, and presents the new changes

我已经在几个实例上成功地使用了它。对我有用!

于 2012-07-31T18:00:26.263 回答