在上一篇博文 Rookey.Frame企业级快速开发框架开源了 中我们介绍了Rookey.Frame极速开发框架的最新更新及开源介绍,后面慢慢介绍该框架的使用方法,本人文笔不好,写得不够好的地方请大家见谅。

今天主要给大家介绍菜单功能的使用,一般功能模块开发完成,首先要做的第一步就是配置菜单,在Rookey.Frame框架中菜单配置支持自定义配置和通用配置。

在介绍之前先说明下,之前有园友担心Rookey.Frame开源框架会随着人用的人多会慢慢开始收费或者是卖源码,我在这里告诉大家,Rookey.Frame开源框架任何时候都不会收费或者卖源码或卖半成品,一定会将其开源到底,至于更新我会按自己的时间来安排,毕竟我自己也是有工作要做的,如果更新的慢也请大家理解。

好了,废话完了我们来正式介绍菜单的功能

先看下面的截图:

通用菜单配置

上图中菜单名称,显示名称就不说了,有的可能觉得有个菜单名称就够了,为啥还要个显示名称,菜单名称是TitleKey字段,本框架中大部分模块都有个TitleKey字段,该字段在模块中是唯一的不允许重复的,但很多时候系统的菜单在界面显示的时候可能在中间发生改变,老板觉得叫另外的名字比较好,这时开发人员必须就得改,如果没有菜单显示字段,遇到重复的菜单名称就麻烦了,所以才有了显示菜单这个字段,这个字段可以随便取,允许重复。

针对通用菜单菜单URL均为空,必须要选定模块

自定义菜单配置:

自定义模块,则相反, URL自定义,模块不需要选

我们看下/Scripts/common/Main.js中如下代码:

//单击菜单
function TreeNodeOnClick(node, dom) {
var title = node.text;
if (!node.children) { //子菜单
if (!node.attribute) return;
var url = node.attribute.url;
if (url) { //自定义url菜单
if (url.indexOf("?") > -1)
url += "&";
else
url += "?"
url += 'mId=' + node.id;
if (node.attribute.obj && node.attribute.obj.isNewWinOpen) { //新窗口中打开
window.open(url);
}
else { //在框架的标签页中打开
AddTab(null, title, url);
}
}
else { //通用模块菜单
var moduleId = node.attribute.obj.moduleId;
var moduleName = node.attribute.obj.moduleName;
if (node.attribute.obj && (moduleId || moduleName)) {
var gridUrl = "/Page/Grid.html?page=grid";
if (moduleId) {
gridUrl += "&moduleId=" + moduleId;
}
else if (moduleName) {
gridUrl += "&moduleName=" + moduleName;
}
gridUrl += "&r=" + Math.random();
AddTab(null, title, gridUrl);
}
}
}
else { //文件夹菜单
$(dom).tree('toggle', node.target);
}
}

通用上面代码我们可以看出菜单没有自定义URL时系统会自动转向 /Page/Grid.html

另外针对文件夹菜单需要注意的是叶子节点不能勾选,模块不选,URL为空,如果是顶级菜单,则上级菜单置空。

文件夹菜单:

顶级菜单:

好了今天菜单的功能就先介绍到此地,祝大家生活愉快!

 

Rookey.Frame之菜单设置的更多相关文章

  1. Rookey.Frame之数据库及缓存配置

    上一篇中讨论了Rookey.Frame框架菜单配置功能,这一节我们继续学习Rookey.Frame框架的数据库连接配置. 之前介绍了Rookey.Frame框架支持跨多数据库,并且支持读写分离,不过目 ...

  2. Rookey.Frame企业级极速开发框架

    项目详细介绍 Rookey.Frame是一套基于.NET MVC + easyui的企业级极速开发框架,支持简单逻辑模块零代码编程.支持工作流(BPM).支持二次开发,具有高扩展性.高复用性.高伸缩性 ...

  3. Rookey.Frame v1.0快速开发平台-整体介绍

    Rookey.Frame v1.0是一套基于.NET MVC的极速开发框架,支持简单逻辑模块零代码编程.支持二次开发,具有高扩展性.高复用性.高伸缩性. 框架特点 (1)简单逻辑模块实现零代码编程,通 ...

  4. Rookey.Frame企业级快速开发框架开源了

    Rookey.Frame是一套基于.NET MVC + easyui的企业级极速开发框架,支持简单逻辑模块零代码编程.支持工作流(BPM).支持二次开发,具有高扩展性.高复用性.高伸缩性:应广大网友要 ...

  5. Rookey.Frame之实体表单验证

    昨天给大家介绍了实体FluentValidation验证,今天继续给大家介绍表单验证,在Rookey.Frame框架中,表单验证有PrimaryKeyFields字段验证.唯一验证.必填验证.常用验证 ...

  6. Rookey.Frame之实体FluentValidation验证

    昨天给大家介绍了Rookey.Frame框架的实体设计,今天继续跟大家分享实体的FluentValidation验证,在Rookey.Frame框架中可以设置多种验证方式:FluentValidati ...

  7. Rookey.Frame之实体类

    上周跟大家分享了Rookey.Frame框架的初始化功能,今天继续给大家介绍实体类的设计. 先看下下面菜单实体示例代码: using Rookey.Frame.EntityBase; using Ro ...

  8. Rookey.Frame之系统初始化

    昨天介绍了数据库的配置,今天继续介绍系统的初始化功能:针对系统初始化在开发中也是很重要的一部分,它可以提前将相关数据提前自动初始化到系统中,同时也可以为上线测试提供方便,可以很方便进行系统测试演练,防 ...

  9. 用c#开发微信(5)自定义菜单设置工具 (在线创建)

    读目录 1 使用 2 原理 3. 错误 上次写了<用c#开发微信 (4) 基于Senparc.Weixin框架的接收事件推送处理 (源码下载)>,有园友问到如何创建菜单的问题,今天就介绍下 ...

随机推荐

  1. java基础-Arrays类常用方法介绍

    java基础-Arrays类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Array类的概念 此类包含用来操作数组(比如排序和搜索)的各种方法.需要注意,如果指定 ...

  2. Cookie 基本操作

    Cookie 基本操作 对于 Cookie 得常用操作有,存取,读取,以及设置有效期:具体可以参照 JavaScript 操作 Cookie 一文:但,近期在前端编码方面,皆以Vue为冲锋利器,所以就 ...

  3. JS动态更新微信浏览器中的title

    问题: 最近在做一个微信中分享的宣传页,分不同的场景,切换不同的场景时需要设置不同的title,实现的方案很简单,当用户切换场景的时候,修改document对象的title属性,可是在实际测试中,io ...

  4. ZeroMQ API(三) 消息

    1.初始化消息 1.1 zmq_msg_init(3) 1.1.1 名称 zmq_msg_init - 初始化空的ZMQ消息 1.1.2 概要 int zmq_msg_init(zmq_msg_t * ...

  5. [Luogu 1073] NOIP2009 最优贸易

    [Luogu 1073] NOIP2009 最优贸易 分层图,跑最长路. 真不是我恋旧,是我写的 Dijkstra 求不出正确的最长路,我才铤而走险写 SPFA 的- #include <alg ...

  6. 让网页的title动起来

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  7. 【AtCoder Regular Contest 080E】Young Maids [堆][线段树]

    Young Maids Time Limit: 50 Sec  Memory Limit: 512 MB Description 给定一个排列,每次选出相邻的两个放在队头,要求字典序最小. Input ...

  8. 天梯赛 L2-023. (模拟) 图着色问题

    题目链接 题目描述 图着色问题是一个著名的NP完全问题.给定无向图 G = (V, E),问可否用K种颜色为V中的每一个顶点分配一种颜色,使得不会有两个相邻顶点具有同一种颜色? 但本题并不是要你解决这 ...

  9. 【蓝桥杯单片机12】实时时钟DS1302的基本操作

    [蓝桥杯单片机12]实时时钟DS1302的基本操作 广东职业技术学院 欧浩源 实时时钟DS1302几乎是蓝桥杯“单片机设计与开发”每年必考的内容,虽然在竞赛现场有提供一个底层读写寄存器的库文件,但是作 ...

  10. faskclick

        PC网页上的大部分操作都是用鼠标的,即响应的是鼠标事件,包括mousedown.mouseup.mousemove和click事件.一次点击行为,事件的触发过程为:mousedown -> ...