如何在javascript异步调用中维护上下文?

时间:2017-05-09 14:12:32

标签: javascript ajax asynchronous moodle yui

我正在使用moodle版本3.2,我希望捕获所有ajax请求并延迟它们。我可以抓住他们,但我不能保持他们被称为的背景。

示例:我有2个javascript文件,accessManager.jsfilepicker.jsaccessManager.js包含在所有HTML文件中。

我的accessManager.js包含:

function myFunction(){
  return new Promise(function(resolve, reject) {
    setTimeout( function () {
      var r = confirm("Ajax Request!");
      if (r) {
        resolve(true);
      }
      else {
        reject(false);
      }
    }, 3000);
  });
}

filepicker.js(重要的部分,ajax调用)包含

myFunction().then(function(){
  Y.io(api, cfg);
 });

问题在于在不同的上下文中完成的ajax调用,并返回一些错误。我怎样才能保持ajax调用上下文?预期的行为将是filepicker - >调用myFunction async来延迟ajax调用 - >返回filepicker上下文并进行调用。

提前致谢!

0 个答案:

没有答案