我在做layuiAdmin std 通用后台管理模板系统(iframe标准版)的动态侧边栏渲染

1.layuiAdmin的根据请求获取数据 动态生成侧边栏

注意:请求地址一样 但携带的token不一样 会返回不一样的侧边栏 就是权限问题

在views/index.html页面上改造的前后
改造侧边栏的渲染代码前
 <!-- 侧边菜单 -->

     <div class="layui-side layui-side-menu">

       <div class="layui-side-scroll">

         <div class="layui-logo" lay-href="home/console.html">

           <span>CRM</span>

         </div>
         
         <ul class="layui-nav layui-nav-tree" lay-shrink="all" id="LAY-system-side-menu"
           lay-filter="layadmin-system-side-menu">

           <li data-name="set" class="layui-nav-item">
             <a href="javascript:;" lay-tips="设置" lay-direction="2">
               <i class="layui-icon layui-icon-set"></i>
               <cite>系统管理</cite>
             </a>
             <dl class="layui-nav-child">
               <dd></dd><a lay-href="config/index.html">菜单模块</a></dd>
               <dd>
                 <a lay-href="app/forum/list.html">行为模块</a>
               </dd>
               <dd>
                 <a lay-href="app/seas/list.html">公海规则</a>
               </dd>
             </dl>
           </li>
   			后面的省略。。。。。。。
改造后
  
      <!-- 侧边菜单 -->

      <div class="layui-side layui-side-menu">

        <div class="layui-side-scroll">

          <div class="layui-logo" lay-href="home/console.html">

            <span>CRM</span>

          </div>



          <ul class="layui-nav layui-nav-tree" id="nav" lay-filter="demo"></ul>



        </div>

      </div>

改造引入的文件 和动态获取侧边栏数据的请求

注意:需要把 navbar文件引入 然后需要发送请求把获得的侧边的数据填入侧边栏的渲染方法中
navbar的百度网盘地址 永久有效
链接:https://pan.baidu.com/s/1WkriV2kCpeKnmIknRhiYJg
提取码:k6hm

   var data;
    $.ajax({
      url: "https://crm.dscl518.com/index.php/admin/menu/menuLists?access_token=" + localStorage.getItem(
        'access_token'),
      type: 'get',
      dataType: "json",
      success: function (response) {
        console.log(response, 111);
        data = response.data;
        console.log(data);
        var time = setTimeout(function () {
          window.location.reload()
        }, 500)
        clearTimeout(time)
      }
    });;
    layui.config({
      base: '../layuiadmin/', //静态资源所在路径
      version: '201906044455'
    }).extend({
      index: 'lib/index' //主入口模块
    }).use(['index', 'navbar', 'layer'], function () {
      // 从这里开始我加入的
      var navbar = layui.navbar();
      navbar.set({
        elem: '#nav',
        data: data
        // 这里用不鸟url获取数据,只能用这种方式,先把数据获取到,然后在在这里传入
      });
      navbar.render();
      //下面的部分不是必须的
      navbar.on('click(demo)', function (data) {
        // console.log(data.elem);
        // console.log(data.field.title);//标题
        // console.log(data.field.icon);//图标
        // console.log(data.field.href);//调转地址
        // layer.msg(data.field.href);
      });

      //给选中的页签添加选中样式(解决刷新失效问题)
      var url = window.location.href.replace("//", "");
      var relUrl = url.substring(url.lastIndexOf("/") + 1);
      //去掉参数部分
      if (relUrl.indexOf("?") != -1) {
        relUrl = relUrl.split("?")[0];
      }
      $("#leftNavbar a").each(function () {
        var that = this;
        if ($(that).attr("href") == relUrl) {
          $(that).parent().addClass("layui-this");
          $(that).parents("li:eq(0)").addClass("layui-nav-itemed");
          var nodes = $(that).parents("li:eq(0)").find("a .layui-nav-more");
          if (nodes.length > 0) {
            nodes.each(function () {
              if ($(this).parents("dd:eq(0)").find("[href='" + relUrl +
                  "']").length > 0) {
                $(this).parent().parent().addClass("layui-nav-itemed");
              }
            });
          }
        }
      });
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值