单击按钮时,我试图拥有一棵树。基本上这个视图在顶部有一个工具栏,我希望树显示在工具栏下方。首先,我很困惑我应该使用什么 xtype,无论是
xtype : 'treepanel'
或其
xtype : 'treeview'.
这是我的树的代码
Ext.define('Campus.view.Hierarchy', {
alias: 'widget.hierarchy',
extend: 'Ext.panel.Panel',
initComponent: function () {
var config = {
xtype: 'panel',
border: false,
autoScroll: true,
baseCls: 'topMenu',
dockedItems: [{
xtype: 'toolbar',
border: false,
dock: 'top',
items: [{
xtype: 'button',
text: LANG.BTADDREG,
iconCls: 'icon-add-tb',
cls: 'tip-btn',
iconAlign: 'right',
action: 'addRegion',
id: 'ADDREGION'
}],
items: [{
xtype: 'treepanel',
title: '',
border: false,
enableDD: true,
viewConfig: {
enableDD: true,
plugins: {
ptype: 'treeviewdragdrop'
}
},
collapsible: false,
useArrows: true,
rootVisible: false,
store: 'HierarchyTree',
multiSelect: false,
singleExpand: false,
id: 'TREE'
}]
var holder = Ext.getCmp('center');
holder.remove(0);
holder.add(Ext.apply(config));
}
我在树内定义商店,因为在 app/store 文件夹中定义树商店,显示错误如下:
me.store.getRootNode is not a function
node: me.store.getRootNode()
/模型
Ext.define('App.model.HierarchyTree', {
extend : 'Ext.data.Model',
fields : ['Title', 'ID', 'LevelID', 'ParentID']
});
/店铺
Ext.define('App.store.HierarchyTree', {
extend : 'Ext.data.Store',
model : 'Campus.model.HierarchyTree',
storeID : 'HierarchyTree',
proxy : {
type : 'ajax',
url : 'data/Locations.aspx',
reader : {
type : 'json',
root : 'Rows'
},
actionMethods : {
create : 'POST',
read : 'POST'
},
extraParams : {
mode : 'HIERARCHYFULLLIST'
}
},
autoLoad : true
});
另外,当我使用时xtype :'treepanel'
,它只显示一个水平滚动条,没有别的。当我使用时xtype: 'treeview'
,它的显示
me.panel is undefined
treeStore = me.panel.getStore();
谁能告诉我我做错了什么
编辑
配置应用于 Ext.getCmp('center') 因为应用程序分为三个部分,所以每当我们显示一个视图时,我们都会抓住应用程序的中心区域,然后显示它