mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-07-09 03:22:51 +08:00
将js代码架构改为app下渲染;
This commit is contained in:
@@ -1,16 +1,11 @@
|
||||
/**
|
||||
* date:2020/02/27
|
||||
* author:Mr.Chung
|
||||
* version:2.0
|
||||
* description:layuimini 主体框架扩展
|
||||
*/
|
||||
|
||||
|
||||
define(["jquery", "miniMenu", "miniTheme", "miniTab"], function ($, miniMenu, miniTheme, miniTab) {
|
||||
(function () {
|
||||
|
||||
var $ = layui.$,
|
||||
layer = layui.layer,
|
||||
element = layui.element;
|
||||
element = layui.element
|
||||
miniMenu = window.miniMenu
|
||||
miniTheme = window.miniTheme
|
||||
miniTab = window.miniTab;
|
||||
|
||||
if (!/http(s*):\/\//.test(location.href)) {
|
||||
var tips = "请先将项目部署至web容器(Apache/Tomcat/Nginx/IIS/等),否则部分数据将无法显示";
|
||||
@@ -108,7 +103,7 @@ define(["jquery", "miniMenu", "miniTheme", "miniTab"], function ($, miniMenu, mi
|
||||
* @param clearUrl
|
||||
*/
|
||||
renderClear: function (clearUrl) {
|
||||
$('.layuimini-clear').attr('data-href',clearUrl);
|
||||
$('.layuimini-clear').attr('data-href', clearUrl);
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -175,7 +170,7 @@ define(["jquery", "miniMenu", "miniTheme", "miniTab"], function ($, miniMenu, mi
|
||||
el.msExitFullscreen();
|
||||
} else if (el.oRequestFullscreen) {
|
||||
el.oCancelFullScreen();
|
||||
}else if (el.mozCancelFullScreen) {
|
||||
} else if (el.mozCancelFullScreen) {
|
||||
el.mozCancelFullScreen();
|
||||
} else if (el.webkitCancelFullScreen) {
|
||||
el.webkitCancelFullScreen();
|
||||
@@ -211,7 +206,7 @@ define(["jquery", "miniMenu", "miniTheme", "miniTab"], function ($, miniMenu, mi
|
||||
* @returns {*}
|
||||
*/
|
||||
success: function (title) {
|
||||
return layer.msg(title, {icon: 1, shade: this.shade, scrollbar: false, time: 2000, shadeClose: true});
|
||||
return layer.msg(title, { icon: 1, shade: this.shade, scrollbar: false, time: 2000, shadeClose: true });
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -220,7 +215,7 @@ define(["jquery", "miniMenu", "miniTheme", "miniTab"], function ($, miniMenu, mi
|
||||
* @returns {*}
|
||||
*/
|
||||
error: function (title) {
|
||||
return layer.msg(title, {icon: 2, shade: this.shade, scrollbar: false, time: 3000, shadeClose: true});
|
||||
return layer.msg(title, { icon: 2, shade: this.shade, scrollbar: false, time: 3000, shadeClose: true });
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -251,7 +246,7 @@ define(["jquery", "miniMenu", "miniTheme", "miniTab"], function ($, miniMenu, mi
|
||||
* 清理
|
||||
*/
|
||||
$('body').on('click', '[data-clear]', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
sessionStorage.clear();
|
||||
|
||||
// 判断是否清理服务端
|
||||
@@ -293,14 +288,14 @@ define(["jquery", "miniMenu", "miniTheme", "miniTab"], function ($, miniMenu, mi
|
||||
tips = $(this).prop("innerHTML"),
|
||||
isShow = $('.layuimini-tool i').attr('data-side-fold');
|
||||
if (isShow == 0 && tips) {
|
||||
tips = "<ul class='layuimini-menu-left-zoom layui-nav layui-nav-tree layui-this'><li class='layui-nav-item layui-nav-itemed'>"+tips+"</li></ul>" ;
|
||||
tips = "<ul class='layuimini-menu-left-zoom layui-nav layui-nav-tree layui-this'><li class='layui-nav-item layui-nav-itemed'>" + tips + "</li></ul>";
|
||||
window.openTips = layer.tips(tips, $(this), {
|
||||
tips: [2, '#2f4056'],
|
||||
time: 300000,
|
||||
skin:"popup-tips",
|
||||
success:function (el) {
|
||||
var left = $(el).position().left - 10 ;
|
||||
$(el).css({ left:left });
|
||||
skin: "popup-tips",
|
||||
success: function (el) {
|
||||
var left = $(el).position().left - 10;
|
||||
$(el).css({ left: left });
|
||||
element.render();
|
||||
}
|
||||
});
|
||||
@@ -350,5 +345,5 @@ define(["jquery", "miniMenu", "miniTheme", "miniTab"], function ($, miniMenu, mi
|
||||
|
||||
|
||||
|
||||
return miniAdmin;
|
||||
});
|
||||
window.miniAdmin = miniAdmin;
|
||||
})()
|
||||
@@ -1,12 +1,6 @@
|
||||
/**
|
||||
* date:2020/02/27
|
||||
* author:Mr.Chung
|
||||
* version:2.0
|
||||
* description:layuimini 菜单框架扩展
|
||||
*/
|
||||
define(["jquery"], function ($) {
|
||||
(function () {
|
||||
var element = layui.element,
|
||||
laytpl = layui.laytpl,
|
||||
laytpl = layui.laytpl,
|
||||
layer = layui.layer;
|
||||
|
||||
var miniMenu = {
|
||||
@@ -39,9 +33,9 @@ define(["jquery"], function ($) {
|
||||
var leftMenuHtml = '',
|
||||
childOpenClass = '',
|
||||
leftMenuCheckDefault = 'layui-this';
|
||||
var me = this ;
|
||||
var me = this;
|
||||
if (menuChildOpen) childOpenClass = ' layui-nav-itemed';
|
||||
leftMenuHtml = this.renderLeftMenu(menuList,{ childOpenClass:childOpenClass }) ;
|
||||
leftMenuHtml = this.renderLeftMenu(menuList, { childOpenClass: childOpenClass });
|
||||
$('.layui-layout-body').addClass('layuimini-single-module'); //单模块标识
|
||||
$('.layuimini-header-menu').remove();
|
||||
$('.layuimini-menu-left').html(leftMenuHtml);
|
||||
@@ -52,63 +46,63 @@ define(["jquery"], function ($) {
|
||||
/**
|
||||
* 渲染一级菜单
|
||||
*/
|
||||
compileMenu: function(menu,isSub){
|
||||
var menuHtml = '<li {{#if( d.menu){ }} data-menu="{{-d.menu}}" {{#}}} class="layui-nav-item menu-li {{-d.childOpenClass}} {{-d.className}}" {{#if( d.id){ }} id="{{-d.id}}" {{#}}}> <a {{#if( d.href){ }} layuimini-href="{{-d.href}}" {{#}}} {{#if( d.target){ }} target="{{-d.target}}" {{#}}} href="javascript:;">{{#if( d.icon){ }} <i class="{{-d.icon}}"></i> {{#}}} <span class="layui-left-nav">{{-d.title}}</span></a> {{# if(d.children){}} {{-d.children}} {{#}}} </li>' ;
|
||||
if(isSub){
|
||||
menuHtml = '<dd class="menu-dd {{-d.childOpenClass}} {{- d.className }}"> <a href="javascript:;" {{#if( d.menu){ }} data-menu="{{-d.menu}}" {{#}}} {{#if( d.id){ }} id="{{-d.id}}" {{#}}} {{#if(( !d.child || !d.child.length ) && d.href){ }} layuimini-href="{{-d.href}}" {{#}}} {{#if( d.target){ }} target="{{-d.target}}" {{#}}}> {{#if( d.icon){ }} <i class="{{-d.icon}}"></i> {{#}}} <span class="layui-left-nav"> {{-d.title}}</span></a> {{# if(d.children){}} {{-d.children}} {{#}}}</dd>'
|
||||
compileMenu: function (menu, isSub) {
|
||||
var menuHtml = '<li {{#if( d.menu){ }} data-menu="{{-d.menu}}" {{#}}} class="layui-nav-item menu-li {{-d.childOpenClass}} {{-d.className}}" {{#if( d.id){ }} id="{{-d.id}}" {{#}}}> <a {{#if( d.href){ }} layuimini-href="{{-d.href}}" {{#}}} {{#if( d.target){ }} target="{{-d.target}}" {{#}}} href="javascript:;">{{#if( d.icon){ }} <i class="{{-d.icon}}"></i> {{#}}} <span class="layui-left-nav">{{-d.title}}</span></a> {{# if(d.children){}} {{-d.children}} {{#}}} </li>';
|
||||
if (isSub) {
|
||||
menuHtml = '<dd class="menu-dd {{-d.childOpenClass}} {{- d.className }}"> <a href="javascript:;" {{#if( d.menu){ }} data-menu="{{-d.menu}}" {{#}}} {{#if( d.id){ }} id="{{-d.id}}" {{#}}} {{#if(( !d.child || !d.child.length ) && d.href){ }} layuimini-href="{{-d.href}}" {{#}}} {{#if( d.target){ }} target="{{-d.target}}" {{#}}}> {{#if( d.icon){ }} <i class="{{-d.icon}}"></i> {{#}}} <span class="layui-left-nav"> {{-d.title}}</span></a> {{# if(d.children){}} {{-d.children}} {{#}}}</dd>';
|
||||
}
|
||||
return laytpl(menuHtml).render(menu);
|
||||
},
|
||||
compileMenuContainer :function(menu,isSub){
|
||||
var wrapperHtml = '<ul class="layui-nav layui-nav-tree layui-left-nav-tree {{-d.className}}" id="{{-d.id}}">{{-d.children}}</ul>' ;
|
||||
if(isSub){
|
||||
wrapperHtml = '<dl class="layui-nav-child ">{{-d.children}}</dl>' ;
|
||||
compileMenuContainer: function (menu, isSub) {
|
||||
var wrapperHtml = '<ul class="layui-nav layui-nav-tree layui-left-nav-tree {{-d.className}}" id="{{-d.id}}">{{-d.children}}</ul>';
|
||||
if (isSub) {
|
||||
wrapperHtml = '<dl class="layui-nav-child ">{{-d.children}}</dl>';
|
||||
}
|
||||
if(!menu.children){
|
||||
if (!menu.children) {
|
||||
return "";
|
||||
}
|
||||
return laytpl(wrapperHtml).render(menu);
|
||||
},
|
||||
|
||||
each:function(list,callback){
|
||||
each: function (list, callback) {
|
||||
var _list = [];
|
||||
for(var i = 0 ,length = list.length ; i<length ;i++ ){
|
||||
_list[i] = callback(i,list[i]) ;
|
||||
for (var i = 0, length = list.length; i < length; i++) {
|
||||
_list[i] = callback(i, list[i]);
|
||||
}
|
||||
return _list ;
|
||||
return _list;
|
||||
},
|
||||
renderChildrenMenu:function(menuList,options){
|
||||
var me = this ;
|
||||
menuList = menuList || [] ;
|
||||
var html = this.each(menuList,function (idx,menu) {
|
||||
if(menu.child && menu.child.length){
|
||||
menu.children = me.renderChildrenMenu(menu.child,{ childOpenClass: options.childOpenClass || '' });
|
||||
renderChildrenMenu: function (menuList, options) {
|
||||
var me = this;
|
||||
menuList = menuList || [];
|
||||
var html = this.each(menuList, function (idx, menu) {
|
||||
if (menu.child && menu.child.length) {
|
||||
menu.children = me.renderChildrenMenu(menu.child, { childOpenClass: options.childOpenClass || '' });
|
||||
}
|
||||
menu.className = "" ;
|
||||
menu.childOpenClass = options.childOpenClass || ''
|
||||
return me.compileMenu(menu,true)
|
||||
menu.className = "";
|
||||
menu.childOpenClass = options.childOpenClass || '';
|
||||
return me.compileMenu(menu, true);
|
||||
}).join("");
|
||||
return me.compileMenuContainer({ children:html },true)
|
||||
return me.compileMenuContainer({ children: html }, true);
|
||||
},
|
||||
renderLeftMenu :function(leftMenus,options){
|
||||
renderLeftMenu: function (leftMenus, options) {
|
||||
options = options || {};
|
||||
var me = this ;
|
||||
var leftMenusHtml = me.each(leftMenus || [],function (idx,leftMenu) { // 左侧菜单遍历
|
||||
var children = me.renderChildrenMenu(leftMenu.child, { childOpenClass:options.childOpenClass });
|
||||
var me = this;
|
||||
var leftMenusHtml = me.each(leftMenus || [], function (idx, leftMenu) { // 左侧菜单遍历
|
||||
var children = me.renderChildrenMenu(leftMenu.child, { childOpenClass: options.childOpenClass });
|
||||
var leftMenuHtml = me.compileMenu({
|
||||
href:leftMenu.href,
|
||||
target:leftMenu.target,
|
||||
childOpenClass:options.childOpenClass,
|
||||
icon:leftMenu.icon,
|
||||
title:leftMenu.title,
|
||||
children:children,
|
||||
href: leftMenu.href,
|
||||
target: leftMenu.target,
|
||||
childOpenClass: options.childOpenClass,
|
||||
icon: leftMenu.icon,
|
||||
title: leftMenu.title,
|
||||
children: children,
|
||||
className: '',
|
||||
});
|
||||
return leftMenuHtml ;
|
||||
return leftMenuHtml;
|
||||
}).join("");
|
||||
|
||||
leftMenusHtml = me.compileMenuContainer({ id:options.parentMenuId,className:options.leftMenuCheckDefault,children:leftMenusHtml }) ;
|
||||
return leftMenusHtml ;
|
||||
leftMenusHtml = me.compileMenuContainer({ id: options.parentMenuId, className: options.leftMenuCheckDefault, children: leftMenusHtml });
|
||||
return leftMenusHtml;
|
||||
},
|
||||
/**
|
||||
* 多模块
|
||||
@@ -117,7 +111,7 @@ define(["jquery"], function ($) {
|
||||
*/
|
||||
renderMultiModule: function (menuList, menuChildOpen) {
|
||||
menuList = menuList || [];
|
||||
var me = this ;
|
||||
var me = this;
|
||||
var headerMenuHtml = '',
|
||||
headerMobileMenuHtml = '',
|
||||
leftMenuHtml = '',
|
||||
@@ -127,27 +121,27 @@ define(["jquery"], function ($) {
|
||||
|
||||
if (menuChildOpen) childOpenClass = ' layui-nav-itemed';
|
||||
var headerMenuHtml = this.each(menuList, function (index, val) { //顶部菜单渲染
|
||||
var menu = 'multi_module_' + index ;
|
||||
var id = menu+"HeaderId";
|
||||
var topMenuItemHtml = "" ;
|
||||
var menu = 'multi_module_' + index;
|
||||
var id = menu + "HeaderId";
|
||||
var topMenuItemHtml = "";
|
||||
topMenuItemHtml = me.compileMenu({
|
||||
className:headerMenuCheckDefault,
|
||||
menu:menu,
|
||||
id:id,
|
||||
title:val.title,
|
||||
href:"",
|
||||
target:"",
|
||||
children:""
|
||||
className: headerMenuCheckDefault,
|
||||
menu: menu,
|
||||
id: id,
|
||||
title: val.title,
|
||||
href: "",
|
||||
target: "",
|
||||
children: ""
|
||||
});
|
||||
leftMenuHtml+=me.renderLeftMenu(val.child,{
|
||||
parentMenuId:menu,
|
||||
childOpenClass:childOpenClass,
|
||||
leftMenuCheckDefault:leftMenuCheckDefault
|
||||
leftMenuHtml += me.renderLeftMenu(val.child, {
|
||||
parentMenuId: menu,
|
||||
childOpenClass: childOpenClass,
|
||||
leftMenuCheckDefault: leftMenuCheckDefault
|
||||
});
|
||||
headerMobileMenuHtml +=me.compileMenu({ id:id,menu:menu,id:id,icon:val.icon, title:val.title, },true);
|
||||
headerMobileMenuHtml += me.compileMenu({ id: id, menu: menu, id: id, icon: val.icon, title: val.title, }, true);
|
||||
headerMenuCheckDefault = "";
|
||||
leftMenuCheckDefault = "layui-hide" ;
|
||||
return topMenuItemHtml ;
|
||||
leftMenuCheckDefault = "layui-hide";
|
||||
return topMenuItemHtml;
|
||||
}).join("");
|
||||
$('.layui-layout-body').addClass('layuimini-multi-module'); //多模块标识
|
||||
$('.layuimini-menu-header-pc').html(headerMenuHtml); //电脑
|
||||
@@ -165,7 +159,7 @@ define(["jquery"], function ($) {
|
||||
* 菜单模块切换
|
||||
*/
|
||||
$('body').on('click', '[data-menu]', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var menuId = $(this).attr('data-menu');
|
||||
// header
|
||||
$(".layuimini-header-menu .layui-nav-item.layui-this").removeClass('layui-this');
|
||||
@@ -182,7 +176,7 @@ define(["jquery"], function ($) {
|
||||
* 菜单缩放
|
||||
*/
|
||||
$('body').on('click', '.layuimini-site-mobile', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var isShow = $('.layuimini-tool [data-side-fold]').attr('data-side-fold');
|
||||
if (isShow == 1) { // 缩放
|
||||
$('.layuimini-tool [data-side-fold]').attr('data-side-fold', 0);
|
||||
@@ -203,7 +197,7 @@ define(["jquery"], function ($) {
|
||||
* 菜单缩放
|
||||
*/
|
||||
$('body').on('click', '[data-side-fold]', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var isShow = $('.layuimini-tool [data-side-fold]').attr('data-side-fold');
|
||||
if (isShow == 1) { // 缩放
|
||||
$('.layuimini-tool [data-side-fold]').attr('data-side-fold', 0);
|
||||
@@ -232,9 +226,9 @@ define(["jquery"], function ($) {
|
||||
* 手机端点开模块
|
||||
*/
|
||||
$('body').on('click', '.layuimini-header-menu.layuimini-mobile-show dd', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var check = $('.layuimini-tool [data-side-fold]').attr('data-side-fold');
|
||||
if(check === "1"){
|
||||
if (check === "1") {
|
||||
$('.layuimini-site-mobile').trigger("click");
|
||||
element.init();
|
||||
}
|
||||
@@ -245,5 +239,5 @@ define(["jquery"], function ($) {
|
||||
};
|
||||
|
||||
|
||||
return miniMenu;
|
||||
});
|
||||
window.miniMenu = miniMenu;
|
||||
})();
|
||||
@@ -1,16 +1,8 @@
|
||||
/**
|
||||
* date:2020/02/27
|
||||
* author:Mr.Chung
|
||||
* version:2.0
|
||||
* description:layuimini tab框架扩展
|
||||
*/
|
||||
define(["jquery"], function ($) {
|
||||
var element = layui.element,
|
||||
$ = layui.$;
|
||||
|
||||
(function () {
|
||||
var element = layui.element;
|
||||
$ = layui.$;
|
||||
|
||||
var miniTab = {
|
||||
|
||||
/**
|
||||
* 初始化tab
|
||||
* @param options
|
||||
@@ -20,10 +12,9 @@ define(["jquery"], function ($) {
|
||||
options.multiModule = options.multiModule || false;
|
||||
options.urlHashLocation = options.urlHashLocation || false;
|
||||
options.maxTabNum = options.maxTabNum || 20;
|
||||
options.menuList = options.menuList || []; // todo 后期菜单想改为不操作dom, 而是直接操作初始化传过来的数据
|
||||
options.menuList = options.menuList || []; // todo 后期菜单想改为不操作dom, 而是直接操作初始化传过来的数据
|
||||
options.homeInfo = options.homeInfo || {};
|
||||
options.listenSwichCallback = options.listenSwichCallback || function () {
|
||||
};
|
||||
options.listenSwichCallback = options.listenSwichCallback || function () { };
|
||||
miniTab.listen(options);
|
||||
miniTab.listenRoll();
|
||||
miniTab.listenSwitch(options);
|
||||
@@ -44,22 +35,27 @@ define(["jquery"], function ($) {
|
||||
options.title = options.title || null;
|
||||
options.isIframe = options.isIframe || false;
|
||||
options.maxTabNum = options.maxTabNum || 20;
|
||||
if ($(".layuimini-tab .layui-tab-title li").length >= options.maxTabNum) {
|
||||
if ($('.layuimini-tab .layui-tab-title li').length >= options.maxTabNum) {
|
||||
layer.msg('Tab窗口已达到限定数量,请先关闭部分Tab');
|
||||
return false;
|
||||
}
|
||||
var ele = element;
|
||||
if (options.isIframe) ele = parent.layui.element;
|
||||
ele.tabAdd('layuiminiTab', {
|
||||
title: '<span class="layuimini-tab-active"></span><span>' + options.title + '</span><i class="layui-icon layui-unselect layui-tab-close">ဆ</i>' //用于演示
|
||||
, content: '<iframe width="100%" height="100%" frameborder="no" border="0" marginwidth="0" marginheight="0" src="' + options.href + '"></iframe>'
|
||||
, id: options.tabId
|
||||
title:
|
||||
'<span class="layuimini-tab-active"></span><span>' +
|
||||
options.title +
|
||||
'</span><i class="layui-icon layui-unselect layui-tab-close">ဆ</i>', //用于演示
|
||||
content:
|
||||
'<iframe width="100%" height="100%" frameborder="no" border="0" marginwidth="0" marginheight="0" src="' +
|
||||
options.href +
|
||||
'"></iframe>',
|
||||
id: options.tabId,
|
||||
});
|
||||
$('.layuimini-menu-left').attr('layuimini-tab-tag', 'add');
|
||||
sessionStorage.setItem('layuiminimenu_' + options.tabId, options.title);
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* 切换选项卡
|
||||
* @param tabId
|
||||
@@ -75,7 +71,7 @@ define(["jquery"], function ($) {
|
||||
*/
|
||||
delete: function (tabId, isParent) {
|
||||
// todo 未知BUG,不知道是不是layui问题,必须先删除元素
|
||||
$(".layuimini-tab .layui-tab-title .layui-unselect.layui-tab-bar").remove();
|
||||
$('.layuimini-tab .layui-tab-title .layui-unselect.layui-tab-bar').remove();
|
||||
|
||||
if (isParent === true) {
|
||||
parent.layui.element.tabDelete('layuiminiTab', tabId);
|
||||
@@ -90,7 +86,7 @@ define(["jquery"], function ($) {
|
||||
openNewTabByIframe: function (options) {
|
||||
options.href = options.href || null;
|
||||
options.title = options.title || null;
|
||||
var loading = parent.layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = parent.layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
if (options.href === null || options.href === undefined) options.href = new Date().getTime();
|
||||
var checkTab = miniTab.check(options.href, true);
|
||||
if (!checkTab) {
|
||||
@@ -109,7 +105,7 @@ define(["jquery"], function ($) {
|
||||
* 在iframe层关闭当前tab方法
|
||||
*/
|
||||
deleteCurrentByIframe: function () {
|
||||
var ele = $(".layuimini-tab .layui-tab-title li.layui-this", parent.document);
|
||||
var ele = $('.layuimini-tab .layui-tab-title li.layui-this', parent.document);
|
||||
if (ele.length > 0) {
|
||||
var layId = $(ele[0]).attr('lay-id');
|
||||
miniTab.delete(layId, true);
|
||||
@@ -123,14 +119,14 @@ define(["jquery"], function ($) {
|
||||
// 判断选项卡上是否有
|
||||
var checkTab = false;
|
||||
if (isIframe === undefined || isIframe === false) {
|
||||
$(".layui-tab-title li").each(function () {
|
||||
$('.layui-tab-title li').each(function () {
|
||||
var checkTabId = $(this).attr('lay-id');
|
||||
if (checkTabId != null && checkTabId === tabId) {
|
||||
checkTab = true;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
parent.layui.$(".layui-tab-title li").each(function () {
|
||||
parent.layui.$('.layui-tab-title li').each(function () {
|
||||
var checkTabId = $(this).attr('lay-id');
|
||||
if (checkTabId != null && checkTabId === tabId) {
|
||||
checkTab = true;
|
||||
@@ -147,7 +143,12 @@ define(["jquery"], function ($) {
|
||||
*/
|
||||
openTabRignMenu: function (tabId, left) {
|
||||
miniTab.closeTabRignMenu();
|
||||
var menuHtml = '<div class="layui-unselect layui-form-select layui-form-selected layuimini-tab-mousedown layui-show" data-tab-id="' + tabId + '" style="left: ' + left + 'px!important">\n' +
|
||||
var menuHtml =
|
||||
'<div class="layui-unselect layui-form-select layui-form-selected layuimini-tab-mousedown layui-show" data-tab-id="' +
|
||||
tabId +
|
||||
'" style="left: ' +
|
||||
left +
|
||||
'px!important">\n' +
|
||||
'<dl>\n' +
|
||||
'<dd><a href="javascript:;" layuimini-tab-menu-close="current">关 闭 当 前</a></dd>\n' +
|
||||
'<dd><a href="javascript:;" layuimini-tab-menu-close="other">关 闭 其 他</a></dd>\n' +
|
||||
@@ -203,22 +204,22 @@ define(["jquery"], function ($) {
|
||||
* 打开新窗口
|
||||
*/
|
||||
$('body').on('click', '[layuimini-href]', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var tabId = $(this).attr('layuimini-href'),
|
||||
href = $(this).attr('layuimini-href'),
|
||||
title = $(this).text(),
|
||||
target = $(this).attr('target');
|
||||
|
||||
var el = $("[layuimini-href='" + href + "']", ".layuimini-menu-left");
|
||||
var el = $("[layuimini-href='" + href + "']", '.layuimini-menu-left');
|
||||
layer.close(window.openTips);
|
||||
if (el.length) {
|
||||
$(el).closest(".layui-nav-tree").find(".layui-this").removeClass("layui-this");
|
||||
$(el).parent().addClass("layui-this");
|
||||
$(el).closest('.layui-nav-tree').find('.layui-this').removeClass('layui-this');
|
||||
$(el).parent().addClass('layui-this');
|
||||
}
|
||||
|
||||
if (target === '_blank') {
|
||||
layer.close(loading);
|
||||
window.open(href, "_blank");
|
||||
window.open(href, '_blank');
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -241,14 +242,14 @@ define(["jquery"], function ($) {
|
||||
* 在iframe子菜单上打开新窗口
|
||||
*/
|
||||
$('body').on('click', '[layuimini-content-href]', function () {
|
||||
var loading = parent.layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = parent.layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var tabId = $(this).attr('layuimini-content-href'),
|
||||
href = $(this).attr('layuimini-content-href'),
|
||||
title = $(this).attr('data-title'),
|
||||
target = $(this).attr('target');
|
||||
if (target === '_blank') {
|
||||
parent.layer.close(loading);
|
||||
window.open(href, "_blank");
|
||||
window.open(href, '_blank');
|
||||
return false;
|
||||
}
|
||||
if (tabId === null || tabId === undefined) tabId = new Date().getTime();
|
||||
@@ -270,7 +271,7 @@ define(["jquery"], function ($) {
|
||||
* 关闭选项卡
|
||||
**/
|
||||
$('body').on('click', '.layuimini-tab .layui-tab-title .layui-tab-close', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var $parent = $(this).parent();
|
||||
var tabId = $parent.attr('lay-id');
|
||||
if (tabId !== undefined || tabId !== null) {
|
||||
@@ -283,9 +284,9 @@ define(["jquery"], function ($) {
|
||||
* 选项卡操作
|
||||
*/
|
||||
$('body').on('click', '[layuimini-tab-close]', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var closeType = $(this).attr('layuimini-tab-close');
|
||||
$(".layuimini-tab .layui-tab-title li").each(function () {
|
||||
$('.layuimini-tab .layui-tab-title li').each(function () {
|
||||
var tabId = $(this).attr('lay-id');
|
||||
var id = $(this).attr('id');
|
||||
var isCurrent = $(this).hasClass('layui-this');
|
||||
@@ -307,16 +308,18 @@ define(["jquery"], function ($) {
|
||||
/**
|
||||
* 禁用网页右键
|
||||
*/
|
||||
$(".layuimini-tab .layui-tab-title").unbind("mousedown").bind("contextmenu", function (e) {
|
||||
e.preventDefault();
|
||||
return false;
|
||||
});
|
||||
$('.layuimini-tab .layui-tab-title')
|
||||
.unbind('mousedown')
|
||||
.bind('contextmenu', function (e) {
|
||||
e.preventDefault();
|
||||
return false;
|
||||
});
|
||||
|
||||
/**
|
||||
* 注册鼠标右键
|
||||
*/
|
||||
$('body').on('mousedown', '.layuimini-tab .layui-tab-title li', function (e) {
|
||||
var left = $(this).offset().left - $('.layuimini-tab ').offset().left + ($(this).width() / 2),
|
||||
var left = $(this).offset().left - $('.layuimini-tab ').offset().left + $(this).width() / 2,
|
||||
tabId = $(this).attr('lay-id');
|
||||
if (e.which === 3) {
|
||||
miniTab.openTabRignMenu(tabId, left);
|
||||
@@ -334,10 +337,10 @@ define(["jquery"], function ($) {
|
||||
* tab右键选项卡操作
|
||||
*/
|
||||
$('body').on('click', '[layuimini-tab-menu-close]', function () {
|
||||
var loading = layer.load(0, {shade: false, time: 2 * 1000});
|
||||
var loading = layer.load(0, { shade: false, time: 2 * 1000 });
|
||||
var closeType = $(this).attr('layuimini-tab-menu-close'),
|
||||
currentTabId = $('.layuimini-tab-mousedown').attr('data-tab-id');
|
||||
$(".layuimini-tab .layui-tab-title li").each(function () {
|
||||
$('.layuimini-tab .layui-tab-title li').each(function () {
|
||||
var tabId = $(this).attr('lay-id');
|
||||
var id = $(this).attr('id');
|
||||
if (id !== 'layuiminiHomeTabId') {
|
||||
@@ -365,9 +368,7 @@ define(["jquery"], function ($) {
|
||||
options.filter = options.filter || null;
|
||||
options.multiModule = options.multiModule || false;
|
||||
options.urlHashLocation = options.urlHashLocation || false;
|
||||
options.listenSwichCallback = options.listenSwichCallback || function () {
|
||||
|
||||
};
|
||||
options.listenSwichCallback = options.listenSwichCallback || function () { };
|
||||
element.on('tab(' + options.filter + ')', function (data) {
|
||||
var tabId = $(this).attr('lay-id');
|
||||
if (options.urlHashLocation) {
|
||||
@@ -378,9 +379,9 @@ define(["jquery"], function ($) {
|
||||
}
|
||||
// 判断是否为新增窗口
|
||||
if ($('.layuimini-menu-left').attr('layuimini-tab-tag') === 'add') {
|
||||
$('.layuimini-menu-left').attr('layuimini-tab-tag', 'no')
|
||||
$('.layuimini-menu-left').attr('layuimini-tab-tag', 'no');
|
||||
} else {
|
||||
$("[layuimini-href]").parent().removeClass('layui-this');
|
||||
$('[layuimini-href]').parent().removeClass('layui-this');
|
||||
if (options.multiModule) {
|
||||
miniTab.listenSwitchMultiModule(tabId);
|
||||
} else {
|
||||
@@ -403,10 +404,10 @@ define(["jquery"], function ($) {
|
||||
options.menuList = options.menuList || [];
|
||||
if (!options.urlHashLocation) return false;
|
||||
var tabId = location.hash.replace(/^#/, '');
|
||||
if (tabId === null || tabId === undefined || tabId ==='') return false;
|
||||
if (tabId === null || tabId === undefined || tabId === '') return false;
|
||||
|
||||
// 判断是否为首页
|
||||
if(tabId ===options.homeInfo.href) return false;
|
||||
if (tabId === options.homeInfo.href) return false;
|
||||
|
||||
// 判断是否为右侧菜单
|
||||
var menu = miniTab.searchMenu(tabId, options.menuList);
|
||||
@@ -425,9 +426,9 @@ define(["jquery"], function ($) {
|
||||
|
||||
// 判断是否为快捷菜单
|
||||
var isSearchMenu = false;
|
||||
$("[layuimini-content-href]").each(function () {
|
||||
if ($(this).attr("layuimini-content-href") === tabId) {
|
||||
var title = $(this).attr("data-title");
|
||||
$('[layuimini-content-href]').each(function () {
|
||||
if ($(this).attr('layuimini-content-href') === tabId) {
|
||||
var title = $(this).attr('data-title');
|
||||
miniTab.create({
|
||||
tabId: tabId,
|
||||
href: tabId,
|
||||
@@ -444,7 +445,10 @@ define(["jquery"], function ($) {
|
||||
if (isSearchMenu) return false;
|
||||
|
||||
// 既不是右侧菜单、快捷菜单,就直接打开
|
||||
var title = sessionStorage.getItem('layuiminimenu_' + tabId) === null ? tabId : sessionStorage.getItem('layuiminimenu_' + tabId);
|
||||
var title =
|
||||
sessionStorage.getItem('layuiminimenu_' + tabId) === null
|
||||
? tabId
|
||||
: sessionStorage.getItem('layuiminimenu_' + tabId);
|
||||
miniTab.create({
|
||||
tabId: tabId,
|
||||
href: tabId,
|
||||
@@ -460,11 +464,11 @@ define(["jquery"], function ($) {
|
||||
* 监听滚动
|
||||
*/
|
||||
listenRoll: function () {
|
||||
$(".layuimini-tab-roll-left").click(function () {
|
||||
miniTab.rollClick("left");
|
||||
$('.layuimini-tab-roll-left').click(function () {
|
||||
miniTab.rollClick('left');
|
||||
});
|
||||
$(".layuimini-tab-roll-right").click(function () {
|
||||
miniTab.rollClick("right");
|
||||
$('.layuimini-tab-roll-right').click(function () {
|
||||
miniTab.rollClick('right');
|
||||
});
|
||||
},
|
||||
|
||||
@@ -473,21 +477,21 @@ define(["jquery"], function ($) {
|
||||
* @param tabId
|
||||
*/
|
||||
listenSwitchSingleModule: function (tabId) {
|
||||
$("[layuimini-href]").each(function () {
|
||||
if ($(this).attr("layuimini-href") === tabId) {
|
||||
$('[layuimini-href]').each(function () {
|
||||
if ($(this).attr('layuimini-href') === tabId) {
|
||||
// 自动展开菜单栏
|
||||
var addMenuClass = function ($element, type) {
|
||||
if (type === 1) {
|
||||
$element.addClass('layui-this');
|
||||
if ($element.hasClass('layui-nav-item') && $element.hasClass('layui-this')) {
|
||||
$(".layuimini-header-menu li").attr('class', 'layui-nav-item');
|
||||
$('.layuimini-header-menu li').attr('class', 'layui-nav-item');
|
||||
} else {
|
||||
addMenuClass($element.parent().parent(), 2);
|
||||
}
|
||||
} else {
|
||||
$element.addClass('layui-nav-itemed');
|
||||
if ($element.hasClass('layui-nav-item') && $element.hasClass('layui-nav-itemed')) {
|
||||
$(".layuimini-header-menu li").attr('class', 'layui-nav-item');
|
||||
$('.layuimini-header-menu li').attr('class', 'layui-nav-item');
|
||||
} else {
|
||||
addMenuClass($element.parent().parent(), 2);
|
||||
}
|
||||
@@ -504,19 +508,21 @@ define(["jquery"], function ($) {
|
||||
* @param tabId
|
||||
*/
|
||||
listenSwitchMultiModule: function (tabId) {
|
||||
$("[layuimini-href]").each(function () {
|
||||
if ($(this).attr("layuimini-href") === tabId) {
|
||||
|
||||
$('[layuimini-href]').each(function () {
|
||||
if ($(this).attr('layuimini-href') === tabId) {
|
||||
// 自动展开菜单栏
|
||||
var addMenuClass = function ($element, type) {
|
||||
if (type === 1) {
|
||||
$element.addClass('layui-this');
|
||||
if ($element.hasClass('layui-nav-item') && $element.hasClass('layui-this')) {
|
||||
var moduleId = $element.parent().attr('id');
|
||||
$(".layuimini-header-menu li").attr('class', 'layui-nav-item');
|
||||
$("#" + moduleId + "HeaderId").addClass("layui-this");
|
||||
$(".layuimini-menu-left .layui-nav.layui-nav-tree").attr('class', 'layui-nav layui-nav-tree layui-hide');
|
||||
$("#" + moduleId).attr('class', 'layui-nav layui-nav-tree layui-this');
|
||||
$('.layuimini-header-menu li').attr('class', 'layui-nav-item');
|
||||
$('#' + moduleId + 'HeaderId').addClass('layui-this');
|
||||
$('.layuimini-menu-left .layui-nav.layui-nav-tree').attr(
|
||||
'class',
|
||||
'layui-nav layui-nav-tree layui-hide',
|
||||
);
|
||||
$('#' + moduleId).attr('class', 'layui-nav layui-nav-tree layui-this');
|
||||
} else {
|
||||
addMenuClass($element.parent().parent(), 2);
|
||||
}
|
||||
@@ -524,10 +530,13 @@ define(["jquery"], function ($) {
|
||||
$element.addClass('layui-nav-itemed');
|
||||
if ($element.hasClass('layui-nav-item') && $element.hasClass('layui-nav-itemed')) {
|
||||
var moduleId = $element.parent().attr('id');
|
||||
$(".layuimini-header-menu li").attr('class', 'layui-nav-item');
|
||||
$("#" + moduleId + "HeaderId").addClass("layui-this");
|
||||
$(".layuimini-menu-left .layui-nav.layui-nav-tree").attr('class', 'layui-nav layui-nav-tree layui-hide');
|
||||
$("#" + moduleId).attr('class', 'layui-nav layui-nav-tree layui-this');
|
||||
$('.layuimini-header-menu li').attr('class', 'layui-nav-item');
|
||||
$('#' + moduleId + 'HeaderId').addClass('layui-this');
|
||||
$('.layuimini-menu-left .layui-nav.layui-nav-tree').attr(
|
||||
'class',
|
||||
'layui-nav layui-nav-tree layui-hide',
|
||||
);
|
||||
$('#' + moduleId).attr('class', 'layui-nav layui-nav-tree layui-this');
|
||||
} else {
|
||||
addMenuClass($element.parent().parent(), 2);
|
||||
}
|
||||
@@ -545,16 +554,19 @@ define(["jquery"], function ($) {
|
||||
rollPosition: function () {
|
||||
var $tabTitle = $('.layuimini-tab .layui-tab-title');
|
||||
var autoLeft = 0;
|
||||
$tabTitle.children("li").each(function () {
|
||||
$tabTitle.children('li').each(function () {
|
||||
if ($(this).hasClass('layui-this')) {
|
||||
return false;
|
||||
} else {
|
||||
autoLeft += $(this).outerWidth();
|
||||
}
|
||||
});
|
||||
$tabTitle.animate({
|
||||
scrollLeft: autoLeft - $tabTitle.width() / 3
|
||||
}, 200);
|
||||
$tabTitle.animate(
|
||||
{
|
||||
scrollLeft: autoLeft - $tabTitle.width() / 3,
|
||||
},
|
||||
200,
|
||||
);
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -565,17 +577,22 @@ define(["jquery"], function ($) {
|
||||
var $tabTitle = $('.layuimini-tab .layui-tab-title');
|
||||
var left = $tabTitle.scrollLeft();
|
||||
if ('left' === direction) {
|
||||
$tabTitle.animate({
|
||||
scrollLeft: left - 450
|
||||
}, 200);
|
||||
$tabTitle.animate(
|
||||
{
|
||||
scrollLeft: left - 450,
|
||||
},
|
||||
200,
|
||||
);
|
||||
} else {
|
||||
$tabTitle.animate({
|
||||
scrollLeft: left + 450
|
||||
}, 200);
|
||||
$tabTitle.animate(
|
||||
{
|
||||
scrollLeft: left + 450,
|
||||
},
|
||||
200,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
};
|
||||
|
||||
return miniTab;
|
||||
});
|
||||
window.miniTab = miniTab;
|
||||
})();
|
||||
|
||||
@@ -1,10 +1,4 @@
|
||||
/**
|
||||
* date:2020/02/28
|
||||
* author:Mr.Chung
|
||||
* version:2.0
|
||||
* description:layuimini tab框架扩展
|
||||
*/
|
||||
define(["jquery"], function ($) {
|
||||
(function () {
|
||||
var $ = layui.$,
|
||||
layer = layui.layer;
|
||||
|
||||
@@ -486,7 +480,7 @@ define(["jquery"], function ($) {
|
||||
{
|
||||
title: '拟物',
|
||||
className: 'neomorphic',
|
||||
|
||||
|
||||
},
|
||||
]
|
||||
return listElemStyle;
|
||||
@@ -606,6 +600,5 @@ define(["jquery"], function ($) {
|
||||
}
|
||||
};
|
||||
|
||||
return miniTheme;
|
||||
})
|
||||
;
|
||||
window.miniTheme = miniTheme;
|
||||
})();
|
||||
@@ -1,40 +0,0 @@
|
||||
/**
|
||||
* date:2020/03/01
|
||||
* author:Mr.Chung
|
||||
* version:2.0
|
||||
* description:layuimini 统计框架扩展
|
||||
*/
|
||||
define(["jquery"], function ($) {
|
||||
var $ = layui.$;
|
||||
|
||||
var miniTongji = {
|
||||
|
||||
/**
|
||||
* 初始化
|
||||
* @param options
|
||||
*/
|
||||
render: function (options) {
|
||||
options.specific = options.specific || false;
|
||||
options.domains = options.domains || [];
|
||||
var domain = window.location.hostname;
|
||||
if (options.specific === false || (options.specific === true && options.domains.indexOf(domain) >=0)) {
|
||||
miniTongji.listen();
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 监听统计代码
|
||||
*/
|
||||
listen: function () {
|
||||
var _hmt = _hmt || [];
|
||||
(function () {
|
||||
var hm = document.createElement("script");
|
||||
hm.src = "https://hm.baidu.com/hm.js?d97abf6d61c21d773f97835defbdef4e";
|
||||
var s = document.getElementsByTagName("script")[0];
|
||||
s.parentNode.insertBefore(hm, s);
|
||||
})();
|
||||
}
|
||||
};
|
||||
|
||||
return miniTongji;
|
||||
});
|
||||
@@ -1,15 +1,17 @@
|
||||
define(['jquery', 'vue'], function ($, Vue) {
|
||||
(function () {
|
||||
const propertyInputCss = '/static/plugs/lay-module/propertyInput/propertyInput.css';
|
||||
const propertyInputHtml = '/static/plugs/lay-module/propertyInput/propertyInput.html';
|
||||
|
||||
var propertyInput = function () {
|
||||
var cssElement = document.createElement('link');
|
||||
$(function () {
|
||||
var cssElement = document.createElement('link');
|
||||
|
||||
cssElement.setAttribute('rel', 'stylesheet');
|
||||
cssElement.setAttribute('rel', 'stylesheet');
|
||||
|
||||
cssElement.setAttribute('href', propertyInputCss);
|
||||
cssElement.setAttribute('href', propertyInputCss);
|
||||
|
||||
document.body.appendChild(cssElement);
|
||||
document.body.appendChild(cssElement);
|
||||
});
|
||||
};
|
||||
var propertyInputTemplate = '';
|
||||
|
||||
@@ -29,11 +31,11 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
var defaultOption = {
|
||||
placeholder: '请选择',
|
||||
required: ''
|
||||
}
|
||||
};
|
||||
|
||||
var options = $.extend(defaultOption, data);
|
||||
|
||||
options.value = $.trim(options.value)
|
||||
options.value = $.trim(options.value);
|
||||
|
||||
|
||||
app = new Vue({
|
||||
@@ -48,7 +50,7 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
value: ''
|
||||
}
|
||||
]
|
||||
}
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
listItem: {
|
||||
@@ -63,7 +65,7 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
|
||||
created() {
|
||||
if (this.setting.value) {
|
||||
if(typeof this.setting.value === 'string'){
|
||||
if (typeof this.setting.value === 'string') {
|
||||
this.setting.value = JSON.parse(this.setting.value);
|
||||
}
|
||||
this.listItem = this.setting.value;
|
||||
@@ -81,13 +83,13 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
methods: {
|
||||
|
||||
removeItem(item, index) {
|
||||
this.listTag.splice(index, 1)
|
||||
this.listTag.splice(index, 1);
|
||||
},
|
||||
onAddItem() {
|
||||
this.listItem.push({
|
||||
name: '',
|
||||
value: ''
|
||||
})
|
||||
});
|
||||
},
|
||||
onItemNameChange(item, index, event) {
|
||||
this.listItem[index].name = event.target.value;
|
||||
@@ -99,17 +101,17 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
onItemMoveUp(item, index) {
|
||||
var arr = this.listItem;
|
||||
if (index != 0) {
|
||||
arr[index] = arr.splice(index - 1, 1, arr[index])[0]
|
||||
arr[index] = arr.splice(index - 1, 1, arr[index])[0];
|
||||
} else {
|
||||
arr.push(arr.shift())
|
||||
arr.push(arr.shift());
|
||||
}
|
||||
},
|
||||
onItemMoveDown(item, index) {
|
||||
var arr = this.listItem;
|
||||
if (index != arr.length - 1) {
|
||||
arr[index] = arr.splice(index + 1, 1, arr[index])[0]
|
||||
arr[index] = arr.splice(index + 1, 1, arr[index])[0];
|
||||
} else {
|
||||
arr.unshift(arr.splice(index, 1)[0])
|
||||
arr.unshift(arr.splice(index, 1)[0]);
|
||||
}
|
||||
|
||||
},
|
||||
@@ -120,16 +122,16 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
name: '',
|
||||
value: ''
|
||||
}
|
||||
]
|
||||
];
|
||||
} else {
|
||||
this.listItem.splice(index, 1)
|
||||
this.listItem.splice(index, 1);
|
||||
}
|
||||
},
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
return app;
|
||||
}
|
||||
};
|
||||
|
||||
return new propertyInput();
|
||||
})
|
||||
window.propertyInput = new propertyInput();
|
||||
})();
|
||||
@@ -1,15 +1,14 @@
|
||||
define(['jquery', 'vue'], function ($, Vue) {
|
||||
(function () {
|
||||
const tableDataCss = '/static/plugs/lay-module/tableData/tableData.css';
|
||||
const tableDataHtml = '/static/plugs/lay-module/tableData/tableData.html';
|
||||
|
||||
var tableData = function () {
|
||||
var cssElement = document.createElement('link');
|
||||
|
||||
cssElement.setAttribute('rel', 'stylesheet');
|
||||
|
||||
cssElement.setAttribute('href', tableDataCss);
|
||||
|
||||
document.body.appendChild(cssElement);
|
||||
$(function () {
|
||||
var cssElement = document.createElement('link');
|
||||
cssElement.setAttribute('rel', 'stylesheet');
|
||||
cssElement.setAttribute('href', tableDataCss);
|
||||
document.body.appendChild(cssElement);
|
||||
});
|
||||
};
|
||||
var tableDataTemplate = '';
|
||||
|
||||
@@ -42,19 +41,19 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
height: clientHeight,
|
||||
placeholder: '请选择',
|
||||
selectConfirmCallback: 'onTableDataConfirm',
|
||||
}
|
||||
};
|
||||
|
||||
var options = $.extend(defaultOption, data);
|
||||
|
||||
var valueField = options.valueField;
|
||||
|
||||
if (options.index.indexOf('?') > -1) {
|
||||
options.index += '&'
|
||||
options.index += '&';
|
||||
} else {
|
||||
options.index += '?'
|
||||
options.index += '?';
|
||||
}
|
||||
|
||||
options.index += 'select_mode=' + options.selectType
|
||||
options.index += 'select_mode=' + options.selectType;
|
||||
|
||||
app = new Vue({
|
||||
el: elem,
|
||||
@@ -63,14 +62,14 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
setting: options,
|
||||
listSelected: [],
|
||||
value: ''
|
||||
}
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
listSelected(value) {
|
||||
|
||||
var valueList = value.map(itemValue => itemValue[valueField])
|
||||
var valueList = value.map(itemValue => itemValue[valueField]);
|
||||
|
||||
this.value = valueList.join(',')
|
||||
this.value = valueList.join(',');
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -87,9 +86,9 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
op: JSON.stringify({ [options.valueField]: 'in' }),
|
||||
group: options.valueField
|
||||
}, (result) => {
|
||||
loading.hide()
|
||||
loading.hide();
|
||||
this.listSelected = result.data;
|
||||
})
|
||||
});
|
||||
|
||||
},
|
||||
mounted() {
|
||||
@@ -102,7 +101,7 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
methods: {
|
||||
openSelectPage() {
|
||||
|
||||
if(options.readonly == 1){
|
||||
if (options.readonly == 1) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -124,17 +123,17 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
this.listSelected = [];
|
||||
}
|
||||
|
||||
var itemFind = this.listSelected.find(itemSelect => itemSelect[valueField] == dataItem[valueField])
|
||||
var itemFind = this.listSelected.find(itemSelect => itemSelect[valueField] == dataItem[valueField]);
|
||||
|
||||
if (itemFind == undefined) {
|
||||
this.listSelected.push(dataItem)
|
||||
this.listSelected.push(dataItem);
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
this.$forceUpdate();
|
||||
layer.close(index);
|
||||
}
|
||||
};
|
||||
|
||||
},
|
||||
end: function () {
|
||||
@@ -148,10 +147,10 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
this.listSelected.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
return app;
|
||||
}
|
||||
};
|
||||
|
||||
return new tableData();
|
||||
})
|
||||
window.tableData = new tableData();
|
||||
})();
|
||||
@@ -1,15 +1,17 @@
|
||||
define(['jquery', 'vue'], function ($, Vue) {
|
||||
(function () {
|
||||
const tagInputCss = '/static/plugs/lay-module/tagInput/tagInput.css';
|
||||
const tagInputHtml = '/static/plugs/lay-module/tagInput/tagInput.html';
|
||||
|
||||
var tagInput = function () {
|
||||
var cssElement = document.createElement('link');
|
||||
$(function () {
|
||||
var cssElement = document.createElement('link');
|
||||
|
||||
cssElement.setAttribute('rel', 'stylesheet');
|
||||
cssElement.setAttribute('rel', 'stylesheet');
|
||||
|
||||
cssElement.setAttribute('href', tagInputCss);
|
||||
cssElement.setAttribute('href', tagInputCss);
|
||||
|
||||
document.body.appendChild(cssElement);
|
||||
document.body.appendChild(cssElement);
|
||||
});
|
||||
};
|
||||
var tagInputTemplate = '';
|
||||
|
||||
@@ -29,7 +31,7 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
var defaultOption = {
|
||||
placeholder: '请选择',
|
||||
required: ''
|
||||
}
|
||||
};
|
||||
|
||||
var options = $.extend(defaultOption, data);
|
||||
|
||||
@@ -45,21 +47,21 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
inputWidth: 100,
|
||||
inputValuePreview: '',
|
||||
listTag: []
|
||||
}
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
inputValue(value) {
|
||||
|
||||
this.inputValuePreview = value;
|
||||
this.updateInputWidth()
|
||||
this.updateInputWidth();
|
||||
},
|
||||
listTag(value) {
|
||||
this.value = value.join(',')
|
||||
this.value = value.join(',');
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (options.value.length > 0) {
|
||||
this.listTag = options.value.split(',')
|
||||
this.listTag = options.value.split(',');
|
||||
|
||||
}
|
||||
|
||||
@@ -80,12 +82,12 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.listTag.push(this.inputValue)
|
||||
this.listTag.push(this.inputValue);
|
||||
this.inputValue = '';
|
||||
return false;
|
||||
},
|
||||
onContainerClick() {
|
||||
$(this.$refs['tagInputMain']).focus()
|
||||
$(this.$refs['tagInputMain']).focus();
|
||||
},
|
||||
onInputChange(e) {
|
||||
|
||||
@@ -102,13 +104,13 @@ define(['jquery', 'vue'], function ($, Vue) {
|
||||
this.inputWidth = width + 60;
|
||||
},
|
||||
removeItem(item, index) {
|
||||
this.listTag.splice(index, 1)
|
||||
this.listTag.splice(index, 1);
|
||||
}
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
return app;
|
||||
}
|
||||
};
|
||||
|
||||
return new tagInput();
|
||||
})
|
||||
window.tagInput = new tagInput();
|
||||
})();
|
||||
Reference in New Issue
Block a user