我有一个 webapp 已被重构为使用格式中的单个全局变量
app.module.function
app.module.submodule.function
我想重构我现有的泛型
function getData(id, type, url, successHandler, rel) {
var func = window[successHandler]
$.ajax({
type : "POST",
url : url,
data : {"search" : id, "type" : type, "rel" : rel},
dataType: "json",
success : function(data) {
if (func && typeof func === "function") {
func(data, id, 0);
}
}
});
}
函数来利用传入的成功处理程序。例如,一个这样的成功处理程序是clientRelationshipHandler
.
如果处理程序定义为
function clientRelationshipHandler(results, id, type) { .. }
然后window["clientRelationshipHandler"]
返回一个函数。
但是,如果我将其更改为
app.module.submodule.clientRelationshipHandler = function(results, id, type { .. }
两个都
window["clientRelationshipHandler"]
window["app;.module.submodule.clientRelationshipHandler"]
返回 undefined 并因此破坏通用getData
功能。在使用绑定到特定对象的函数时,如何为 Ajax 查询实现通用成功处理程序?