使用回调创建dojo javascript函数

时间:2013-12-09 13:45:14

标签: javascript jquery ajax dojo

我有这样的道场课。

    var widget = declare("app.util",null, {
        createSecuredLayers: function () {
           $.ajax.get({
                url: "/Api/GetLayer",
                success: function (e) {
                },
                error: function () {
                }
            });
        }
    });

我想将此对象与回调参数一起使用。我的意思是我希望将成功错误回调作为参数传递。

    var util = new app.util();
    util.createSecuredLayers({
         success:function(){ },
         error:function(){ }
    });

2 个答案:

答案 0 :(得分:1)

你可以这样做:

var widget = declare("app.util",null, {
    createSecuredLayers: function (args) {
       $.ajax.get({
            url: "/Api/GetLayer",
            success: args.success,
            error: args.error
        });
    }
});


var util = new app.util();
util.createSecuredLayers({
     success:function(){ },
     error:function(){ }
});

您还应该考虑使用Dojo的deferred

答案 1 :(得分:1)

createSecuredLayers: function(item) {
    $.ajax.get({
        url: "/Api/GetLayer",
        success: item.successCallback,
        error: item.errorCallback
    });
}

调用方法时,不要忘记在成功回调中传递响应。

util.createSecuredLayers({
    successCallback: function(resp) {},
    errorCallback: function(err) {}
});