RequireJS的ajaxStart / ajaxStop

时间:2013-05-10 02:18:21

标签: javascript ajax requirejs

在RequireJS中,有没有相当于JQuery的ajaxStart和ajaxStop的函数?或者在requirejs加载任何新的javascript文件时如何监控 全局 ajax状态?

2 个答案:

答案 0 :(得分:0)

不,没有这样的事情。不使用xhr加载模块。在DOM中注入了JavaScript文件,requireJS等待加载脚本。

您可以设置在加载模块时调用的回调:

require(['yourmodule'], function (module) {
    alert('Module has loaded.');
}

答案 1 :(得分:0)

行。我通过覆盖默认的require函数来实现它。 我正在使用coffeescript,代码如下:

_root = @
_require = @require
@requirehook = new class
  constructor: -> @count = 0
  require: =>
    @onAjaxStart?() if not @count
    @count += 1
    _require.apply _root, arguments
    @count -= 1
    @onAjaxStop?() if not @count
  ajaxStart: (fn) => @onAjaxStart = fn
  ajaxStop: (fn) => @onAjaxStop = fn

@require = @requirehook.require