我写了以下功能。在运行时,浏览器抱怨未捕获的TypeError ...没有方法'init'。我的代码出了什么问题?
function build_results_grid (response) {
// build grid
grid_ui.init();
} // build the results grid
var grid_ui = function () {
return {
init: function () {
//build_grid();
}
}; // return
}
答案 0 :(得分:9)
您已将grid_ui
分配给某个功能,但未对其进行调用。
将其更改为
var grid_ui = (function() { ... })();
答案 1 :(得分:3)
因为需要调用grid_ui才能在init中返回函数,所以需要
grid_ui().init();
因为必须调用grid_ui。或者你可以让grid_ui
成为回复,就像SLaks那样
编辑 - 如果你在忽视它之前注意到我在这里的问题,我会误读你的大括号。