Dojo何时需要args变量?

8ehkhllq  于 2022-12-08  发布在  Dojo
关注(0)|答案(1)|浏览(200)

您必须将args变量传递给匿名函数,但匿名函数并不需要args变量,因此您必须记住Dojo何时需要args变量,但Dojo帮助页面没有说明!那么,Dojo何时需要args变量呢?

var init = function(){
var contentNode = dojo.byId("content");
dojo.xhrGet({
    url: "js/sample.txt",
    handleAs: "text",
    load: function(data,args){
    // fade out the node we're modifying
    dojo.fadeOut({
        node: contentNode,
        onEnd: function(){
        // set the data, fade it back in
        contentNode.innerHTML = data; 
        dojo.fadeIn({ node: contentNode }).play();    
        }
    }).play();
    },
    // if any error occurs, it goes here:
    error: function(error,args){
    console.warn("error!",error);
    }
});
}; 
dojo.addOnLoad(init);
niknxzdl

niknxzdl1#

澄清一下:您指的是代码示例中的args参数,该参数是loaderror回调函数定义的一部分:
只有在需要使用args变量时才需要它。Dojo本身并不需要它。通常情况下,您不应该需要它。第一个参数应该是您要查找的结果。
但是,如果需要访问原始的XMLHttpRequest对象,则args.xhr将保存它。
类似地,如果你想访问传递给dojo.xhrGet的原始对象(因为你在它上面存储了某种状态),你可以在args.args处获得它(因此,我通常将该参数命名为ioArgs,所以它将是ioArgs.args)。

相关问题