【发布时间】:2012-08-01 02:00:26
【问题描述】:
声明的 SpineJS 目标之一是使整个 UI 不阻塞(即向用户显示更改,即使它可能尚未在服务器端成功更新)。
它可以以标准的“阻塞”方式使用吗?
【问题讨论】:
标签: spine.js
声明的 SpineJS 目标之一是使整个 UI 不阻塞(即向用户显示更改,即使它可能尚未在服务器端成功更新)。
它可以以标准的“阻塞”方式使用吗?
【问题讨论】:
标签: spine.js
是的,它可以。在“回调”下查看此处:
您基本上可以在任何时候阻止用户界面,我这样做是为了处理那些不能推迟到服务器的事情。请注意,我什至不使用 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
我已经在几个实例上成功地使用了它。非常适合我!
【讨论】: