我刚刚发现了 mockjax 库,它似乎非常适合我的测试需求。我说“几乎”,因为有一件事我似乎无法模拟:$.ajaxPrefilter
处理程序。
通常在 jQuery 中你可以指定:
$.ajaxPrefilter(function() {
doSomethingOnEveryAjaxCall();
});
然后每当有人使用$.ajax
(或$.get
,$.post
等)该doSomethingOnEveryAjaxCall
函数时都会被调用。
但是,如果我这样做:
$.mockjax({url: '/test', responseText: 'test'});
$.ajax({url: '/test'});
我设置的预过滤器 ( doSomethingOnEveryAjaxCall
) 没有被调用。
有没有办法修改该代码,以便即使在 mockjax 请求/响应上也能调用预过滤器?