Extjs4.0 开发笔记-desktop开始菜单动态生成方法
生活随笔
收集整理的這篇文章主要介紹了
Extjs4.0 开发笔记-desktop开始菜单动态生成方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
desktop開始菜單動態生成方法:
Desktop.html中,在<scripts>中的Ext.onReady之前添加如下:
? ? ? ? ? ? ??
var mArr = [];//這里是保存顯示模塊的數組var _menus = [@Html.Raw(ViewBag.Menu as string)]; //從服務端傳來的菜單json //遍歷jsonfor (var i =0; i < _menus.length; i ++){var s = Ext.define('MyDesktop.Menu' + i, {extend: 'MyDesktop.BogusModule',init : function() {this.launcher = {text: _menus[i].menuname,iconCls: 'bogus',handler: function() {return false;},menu: {items: []}};if(_menus[i].menus != null){for (var j = 0; j < _menus[i].menus.length; j++) {this.launcher.menu.items.push({text: _menus[i].menus[j].menuname,iconCls:'bogus',url: _menus[i].menus[j].url,handler : function(src){var desktop = this.app.getDesktop();var win = desktop.getWindow('bogus'+src.windowId);if(!win){win = desktop.createWindow({id: 'bogus'+src.windowId,title:src.text,width:850,height:500,html : '<iframe style="position:relative;background-color:transparent;" allowtransparency="true" width="100%" height="100%" frameborder="0" src="' + src.url + '"></iframe>',iconCls: 'bogus',animCollapse:false,constrainHeader:true});}win.show();return win;},scope: this,windowId: i + j});}}; }});myArr.push(new s);};?
在App.js中getModules : function(){}改為:
? ? ? ? ? ?
GetModules:function(){ mArr.push(new MyDesktop.Notepad());//這個地方也可以增添靜態模塊return mArr;}轉載于:https://www.cnblogs.com/zsmhhfy/archive/2012/06/20/2556486.html
總結
以上是生活随笔為你收集整理的Extjs4.0 开发笔记-desktop开始菜单动态生成方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# 存储过程 分页
- 下一篇: 期末考试时间安排