1
我很新的dojo,我試圖用lang.hitch方法來處理我的回調,但我一直得到一個「未捕獲的參考錯誤:不是定義的錯誤「時使用它。我確定我做錯了什麼 - 我只是不確定它是什麼。 this
引用了我在initializeLocators函數中新創建的對象,並在我遍歷我的代碼時進行了驗證。 showResults方法的candidates參數從事件處理閉包中返回。謝謝你的幫助。使用dojo獲取方法未定義的錯誤lang.hitch
我的類:
define(["dojo/_base/declare", ..., "dojo/_base/lang", "dojo/on", "dojo/dom", ...],
function(declare, ..., lang, ...){
var SDCLocateClass = declare(null, {
...,
constructor: function() {
this.initializeLocators();
},
initializeLocators: function() {
this.addressNode = dom.byId("resultsDiv");
//set up the address locator functionality
this.locator = new Locator("http://...");
this.locator.on("address-to-locations-complete", lang.hitch(this, showResults));
},
showResults: function(candidates) {
...
},
});
return SDCLocateClass;
});
完美,謝謝!我希望文檔能夠更好地解釋說明方法名稱HAS是一個字符串。 – Shawn
它不需要是一個字符串,它需要是一個字符串或一個函數。這裏的問題並不特定於Dojo; 'showResults'沒有在您的代碼中定義。如果你試圖在其他地方使用showResults,你會得到相同的錯誤。 –