layui重新生成html后的渲染

2021-04-08  本文已影响0人  夜色001

元素功能的开启需要加载element模块,对于重新生成的html,我们要在生成后重新渲染。如果我们的模块是通过ajax异步请求获取到数据后再加载的html,那么我们要等到确保html生成后再执行重新渲染。
有两种方式来处理这个问题

1、element作为参数传递下去

layui.use(['element', 'layedit'], function () {
        var element = layui.element; //导航的hover效果、二级菜单等功能,需要依赖element模块
        init(element);
    });

function init(element) {
        $.ajax({
            url: 'http://localhost:10006/bd/bdanthology/list/page?limit=999',
            type: 'get',
            headers: {
                'Content-Type': 'application/json',
                'token': '2bdcf72cf174fc59585f1da865caa4cd'
            },
            success: function (res) {
                if (res.code == 0) {
                    resetAnthology(res.data.list);
                    element.render('nav(anthology)')
                } else {
                    layer.alert(res.msg)
                }
            },
        })
    }

2、等待几秒钟再执行

layui.use(['element', 'layedit'], function () {
        var element = layui.element; //导航的hover效果、二级菜单等功能,需要依赖element模块
        init();
        setInterval(function () {
            element.render('nav')
        },1000)
    });
上一篇下一篇

猜你喜欢

热点阅读