ExtJS - 显示树面板商店的预加载值
ExtJS - showing preloaded value of treepanel's store
我正在使用 ExtJS 6.2。我有一个 xtype: 'treepanel' 允许管理员用户类型检查几家公司。如果 user_type = company,那么树面板会预加载该公司的节点检查值为 true,并且我将 'beforecheckchange' listener 设置为 return false,这样用户就不能 select任何其他公司。
我现在想要实现的是将商店集中在那个预加载的值上。换句话说,我不希望用户滚动找到其公司的节点已选中,我想预设该位置以立即显示已选中的节点。
任何关于如何实现这一目标的指导都将受到赞赏。
使用treepanel的selectPath方法实现,在afterlayout事件中:
afterlayout: function(me){
var type = localStorage.getItem("Usertype");
var id = localStorage.getItem("Id");
var tree = Ext.getCmp('your_treepanel_id')
if(type==desiredUserFilter) {
var child = me.getRootNode().findChild('id',id,true)
tree.selectPath(child)
}
},
我正在使用 ExtJS 6.2。我有一个 xtype: 'treepanel' 允许管理员用户类型检查几家公司。如果 user_type = company,那么树面板会预加载该公司的节点检查值为 true,并且我将 'beforecheckchange' listener 设置为 return false,这样用户就不能 select任何其他公司。
我现在想要实现的是将商店集中在那个预加载的值上。换句话说,我不希望用户滚动找到其公司的节点已选中,我想预设该位置以立即显示已选中的节点。
任何关于如何实现这一目标的指导都将受到赞赏。
使用treepanel的selectPath方法实现,在afterlayout事件中:
afterlayout: function(me){
var type = localStorage.getItem("Usertype");
var id = localStorage.getItem("Id");
var tree = Ext.getCmp('your_treepanel_id')
if(type==desiredUserFilter) {
var child = me.getRootNode().findChild('id',id,true)
tree.selectPath(child)
}
},