layuiAdmin侧边栏菜单刷新保持当前页面

2024年03月21日 layui layuiadmin layuiadmin刷新 layuiadmin刷新保留当前页面 懒猪技术

layuiadmin后台管理框架iframe版,每次刷新整个页面,都会回到首页,这样的体验感非常不好

现在想要实现点击侧边栏菜单后,刷新保持当前页面,可以利用缓存来处理,供自己参考如下:

<script>
    layui.config({
        base: '__ROOT__/homeStatic/' // 静态资源所在路径
    }).extend({
        index: 'lib/index' // 主入口模块
    }).use('index', function() {
        var $ = layui.$,
            admin = layui.admin,
            form = layui.form,
            table = layui.table

        var active = {
            // 点击菜单缓存当前页面
            menuEvent() {
                // 刷新
                $('#LAY-system-side-menu').on("click", 'a[lay-href]', function() {
                    var tabNum = $(this).index();
                    var tabUrl = $(this).attr('lay-href');
                    var homeTabMenu = {};
                    homeTabMenu.tabNum = tabNum;
                    homeTabMenu.tabUrl = tabUrl;
                    sessionStorage.setItem("homeTabMenu", JSON.stringify(homeTabMenu));
                })
            },
            // 刷新保持页面
            stopPage() {
                // 刷新保持在当前页面
                var homeTabMenu = sessionStorage.getItem("homeTabMenu");
                homeTabMenu = JSON.parse(homeTabMenu);
                // console.log(homeTabMenu)
                // console.log(homeTabMenu!='' && homeTabMenu.hasOwnProperty('tabUrl'))
                // 将之前的URL设置为iframe的src
                if (homeTabMenu != null && homeTabMenu.hasOwnProperty('tabUrl')) {
                    var a = homeTabMenu.tabUrl;
                    $(`#LAY-system-side-menu a[lay-href="${a}"]`).click();
                    $(`#LAY-system-side-menu a[lay-href="${a}"]`).parents('li').addClass('layui-nav-itemed');
                }
            },
            init: function() {
                this.menuEvent();
                this.stopPage();
            }
        }
        active.init();
    });
</script>

本文链接:http://so.lmcjl.com/news/111/

展开阅读全文
相关内容