问题描述
使用ajax异步获取指定url内容后再用Layer模块弹窗显示内容的时候遇到了下面的错误:
因为异步获取到的页面中又引用了table模块,但是通过layer渲染出来后加载过程中调用模块的url路径出现了问题,正确的路径应该是/static/layui/lay/modules/table.js
layer调用部分的代码:
$.post({
url: '/detail/',
data: {
zy: _cur_zy,
zone: zone,
status: ''
},
success: function (ret) {
layer.open({
type: 1,
title: '企业详细数据',
content: ret,
area: ['100%', '100%'],
})
}
})
子页面中是正常的调用table模块语法,单独访问子页面是正常的.
解决方案
在子页面使用layui.use()
方法之前先对layui进行配置
layui.config({
dir: '/static/layui/'
})
layui.use(['table'], function () {
let table = layui.table;
let tableIns = table.render({
// 配置省略
})
})