TaoLer/public/static/admin/lib/index.js
2022-08-16 15:19:21 +08:00

106 lines
2.6 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
* @Author: TaoLer <317927823@qq.com>
* @Date: 2021-12-06 16:04:50
* @LastEditTime: 2022-07-29 16:22:20
* @LastEditors: TaoLer
* @Description: 优化版
* @FilePath: \github\TaoLer\public\static\admin\lib\index.js
* Copyright (c) 2020~2022 https://www.aieok.com All rights reserved.
*/
/**
@NamelayuiAdmin iframe版主入口
@Author贤心
@Sitehttp://www.layui.com/admin/
@LicenseLPPL
*/
layui.extend({
setter: 'config' //配置模块
,admin: 'lib/admin' //核心模块
,view: 'lib/view' //视图渲染模块
,editor: '{/}/addons/taonyeditor/js/taonyeditor'
}).define(['setter', 'admin'], function(exports){
var setter = layui.setter
,element = layui.element
,admin = layui.admin
,tabsPage = admin.tabsPage
,view = layui.view
,editor = layui.editor
//打开标签页
,openTabsPage = function(url, text){
//遍历页签选项卡
var matchTo
,tabs = $('#LAY_app_tabsheader>li')
,path = url.replace(/(^http(s*):)|(\?[\s\S]*$)/g, '');
tabs.each(function(index){
var li = $(this)
,layid = li.attr('lay-id');
if(layid === url){
matchTo = true;
tabsPage.index = index;
}
});
text = text || '新标签页';
if(setter.pageTabs){
//如果未在选项卡中匹配到,则追加选项卡
if(!matchTo){
$(APP_BODY).append([
'<div class="layadmin-tabsbody-item layui-show">'
,'<iframe src="'+ url +'" frameborder="0" class="layadmin-iframe"></iframe>'
,'</div>'
].join(''));
tabsPage.index = tabs.length;
element.tabAdd(FILTER_TAB_TBAS, {
title: '<span>'+ text +'</span>'
,id: url
,attr: path
});
}
} else {
var iframe = admin.tabsBody(admin.tabsPage.index).find('.layadmin-iframe');
iframe[0].contentWindow.location.href = url;
}
//定位当前tabs
element.tabChange(FILTER_TAB_TBAS, url);
admin.tabsBodyChange(tabsPage.index, {
url: url
,text: text
});
}
,APP_BODY = '#LAY_app_body', FILTER_TAB_TBAS = 'layadmin-layout-tabs'
,$ = layui.$, $win = $(window);
//初始
if(admin.screen() < 2) admin.sideFlexible();
//将模块根路径设置为 controller 目录
layui.config({
base: setter.base + 'modules/'
});
//扩展 lib 目录下的其它模块
layui.each(setter.extend, function(index, item){
var mods = {};
mods[item] = '{/}' + setter.base + 'lib/extend/' + item;
layui.extend(mods);
});
view().autoRender();
//加载公共模块
layui.use('common');
//对外输出
exports('index', {
openTabsPage: openTabsPage
});
});