layui.define(["element","laytpl" ,"jquery"], function (exports) { // 定义一个模块,依赖element、laytpl和jquery var element = layui.element, // 获取layui的element模块 $ = layui.$, // 获取layui的jQuery模块 laytpl = layui.laytpl, // 获取layui的模板引擎模块 layer = layui.layer; // 获取layui的弹出层模块 var miniMenu = { // 定义miniMenu对象 render: function (options) { // 定义渲染函数 options.menuList = options.menuList || []; // 如果未传入menuList,则默认为空数组 options.multiModule = options.multiModule || false; // 如果未传入multiModule,则默认为false options.menuChildOpen = options.menuChildOpen || false; // 如果未传入menuChildOpen,则默认为false if (options.multiModule) { // 如果开启多模块 miniMenu.renderMultiModule(options.menuList, options.menuChildOpen); // 调用多模块渲染函数 } else { // 否则 miniMenu.renderSingleModule(options.menuList, options.menuChildOpen); // 调用单模块渲染函数 } miniMenu.listen(); // 监听事件 }, renderSingleModule: function (menuList, menuChildOpen) { // 定义单模块渲染函数 menuList = menuList || []; // 如果未传入menuList,则默认为空数组 var leftMenuHtml = '', // 初始化左侧菜单HTML字符串 childOpenClass = '', // 初始化子菜单打开类名 leftMenuCheckDefault = 'layui-this'; // 设置默认选中样式类名 var me = this ; // 保存当前上下文 if (menuChildOpen) childOpenClass = ' layui-nav-itemed'; // 如果需要展开子菜单,添加对应的类名 leftMenuHtml = this.renderLeftMenu(menuList,{ childOpenClass:childOpenClass }) ; // 渲染左侧菜单HTML $('.layui-layout-body').addClass('layuimini-single-module'); // 给布局主体添加单模块标识类名 $('.layuimini-header-menu').remove(); // 移除头部菜单 $('.layuimini-menu-left').html(leftMenuHtml); // 将渲染好的左侧菜单HTML插入到左侧菜单容器中 element.init(); // 初始化layui元素 }, compileMenu: function(menu,isSub){ // 定义菜单HTML模板,使用laytpl语法进行条件渲染 var menuHtml = '