我正在为一个应用程序提供维护,该应用程序通过以下方式进
dojo.xhrPost() and dojo.xhrGet()
Run Code Online (Sandbox Code Playgroud)
并且我想为系统上的所有调用添加一个通用的加载"icon + message"..我发现系统很难找到并且可维护性很低,无法将loadFunction调用添加到所有加载:all of all xhr
所以如果有一种方法可以为系统上的所有ajax调用添加一个监听器,那么我就会徘徊,所以每次调用都会显示加载...
我读到我可以用1.7中的方面做到这一点,但我正在研究的应用程序是使用1.6的Dojo版本
所以如果你知道一种方法来显示所有ajax调用的通用消息..
谢谢你的建议..
你可以做到这一点通过dojo/topic,即IO管道主题,因为道场1.4其中工程.
请参阅jsFiddle的工作示例:http://jsfiddle.net/phusick/cMHdt/
首先,您必须全局启用IO管道主题,ioPublish: true在其中一个中设置dojoConfig,data-dojo-config或djConfig(取决于您使用的).
然后dojo.subscribe()是特定主题,例如:
dojo.subscribe("/dojo/io/start", function(e) {
dojo.style(throbberNode, "display", "block");
});
dojo.subscribe("/dojo/io/stop", function(e) {
dojo.style(throbberNode, "display", "none");
});
Run Code Online (Sandbox Code Playgroud)
可用topics根据Dojo文档是:
/dojo/io/start在没有未完成的IO请求时发送,并且启动新的IO请求.此主题不传递任何参数./dojo/io/send每当启动新的IO请求时都会发送.它传递了dojo.Deferred与主题的请求./dojo/io/load每当IO请求成功加载时发送.它通过主题传递响应和dojo.Deferred请求./dojo/io/error每当IO请求出错时发送.它通过主题传递错误和dojo.Deferred请求./dojo/io/done每当IO请求完成时,通过加载或错误发送.它通过主题传递错误和dojo.Deferred请求./dojo/io/stop所有未完成的IO请求完成后发送.此主题不传递任何参数.| 归档时间: |
|
| 查看次数: |
1355 次 |
| 最近记录: |