0
我有一個小問題來獲取我的樹在控制器中的實例。那麼,沒有MVC模式,它看起來像這樣,它工作正常。如何在控制器中獲取樹實例 - 分機4
var tree = Ext.create('Ext.tree.Panel', {
tbar : [{
text : 'Delete',
handler : function() {
var record = tree.getSelectionModel().getSelection()[0];
record.remove(true);
tree.getView().refresh();
}
}]
});
然後我創建了MVC模式,我想獲得該樹的參考,這樣我就能夠調用的方法getSelectionModel()
等(像什麼,我做了上面的代碼)。
Ext.define("MyApp.controller.GridPanelTreeController", {
views: ["GridPanelTree"],
refs : [{
ref: "controllerDataSelector",
selector: "tree"
}],
init: function(){
this.control({
"toolbar button[action=delete] " : {
click : this.delete
}
});
},
delete : function() {
/* this returns an error, that tree is undefined*/
var tree = this.getControllerDataSelector();
var record = tree.getSelectionModel().getSelection()[0];
/* this returns an error, that TypeError: tree.getSelectionModel is not a function */
var tree = this.getGridPanelTreeView();
var record = tree.getSelectionModel().getSelection()[0];
}
我不知道爲什麼它不能正常工作。如何解決這個問題呢?
只是FYI,'delete'是一個javascript關鍵字,您不應該將它用作函數的名稱。 – kevhender
不,我只是更改函數名稱,它仍然無法按預期方式工作。 –
將'action'屬性添加到按鈕 – MMT