Ext.define('saas.view.main.Navigation', {
extend: 'Ext.view.View',
xtype: 'main-navigation',
reference: 'navigationTreeList',
width: 180,
navCollapsed: false,
cls: 'x-navpanel',
menuPadding: 0,
bind: {
store: '{navMenu}'
},
renderTpl: [
'
',
'{%this.renderContent(out,values)%}',
'
'
],
tpl: [''
],
overItemCls: 'x-navitem-over',
selectedItemCls: 'x-navitem-selected',
singleSelect: true,
itemSelector: '.x-navitem',
initComponent: function () {
var me = this;
Ext.apply(me, {
listeners: {
itemmouseenter: function(navView, record, navItem, index, e, eOpts) {
window.clearTimeout(me.Timer);
me.Timer = setTimeout(function() {
me.showNavMenu(navView, record, navItem, index, e, eOpts);
}, 80);
},
itemmouseleave: function(view, record, item, index, e, eOpts) {
window.clearTimeout(me.Timer);
me.hideNavMenu(view, record, item, index, e, eOpts);
},
itemClick: function(navView, record, navItem, index, e, eOpts) {
window.clearTimeout(me.Timer);
me.Timer = setTimeout(function() {
me.showNavMenu(navView, record, navItem, index, e, eOpts);
}, 20);
},
scope: me
}
});
me.callParent(arguments);
},
showNavMenu: function (navView, record, navItem, index, e, eOpts) {
var me = this,
recData = record.data,
d = recData.items || [],
menuItems = JSON.parse(JSON.stringify(d)),
itemBox = navItem.getBoundingClientRect(),
pos = [itemBox.left + itemBox.width, itemBox.top],
menuId = 'navMenu-' + record.get('id'),
menu = Ext.getCmp(menuId);
//获取b2b权限
var enableB2B = me.ownerCt.ownerCt.getViewModel().get('enableB2B');
Ext.each(menuItems,function(item,index){
if(item.items.length>0){
var l = item.items.length;
for(var i = 0;i