@leevan/jtui 1.2.7 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/examples/App.vue +640 -24
- package/examples/scss/cover.scss +139 -0
- package/examples/scss/global.scss +457 -0
- package/examples/scss/main-style/_handle.scss +217 -0
- package/examples/scss/main-style/_themes.scss +95 -0
- package/examples/scss/main-style/style1.scss +0 -0
- package/examples/scss/main-style/style2.scss +12 -0
- package/examples/scss/main-style/style3.scss +16 -0
- package/examples/scss/pub.scss +142 -0
- package/examples/tableTest/table-dsj.vue +209 -0
- package/examples/tableTest/table-fzbg.vue +163 -0
- package/examples/tableTest/table-ptbg.vue +222 -0
- package/examples/tableTest/table-tree.vue +45 -0
- package/examples/tableTest/tree-table.vue +45 -0
- package/lib/jtui.common.js +114134 -84420
- package/lib/jtui.css +1 -1
- package/lib/jtui.umd.js +114134 -84420
- package/lib/jtui.umd.min.js +176 -133
- package/package.json +6 -5
- package/packages/index.js +6 -3
- package/packages/jt-echarts-pc/JtEchartsPc.vue +6 -2
- package/packages/jt-form-pc/JtFormPc.vue +1 -1
- package/packages/jt-table/comp.js +17 -0
- package/packages/jt-table/components/tabsBtn.vue +53 -0
- package/packages/jt-table/examples/FilterComplex.vue +78 -0
- package/packages/jt-table/examples/FilterContent.vue +159 -0
- package/packages/jt-table/examples/FilterExcel.vue +161 -0
- package/packages/jt-table/examples/FilterInput.vue +92 -0
- package/packages/jt-table/filter.js +162 -0
- package/packages/jt-table/index.js +10 -0
- package/packages/jt-table/index.vue +1441 -0
- package/packages/jt-table-pc/data2.js +33 -14
- package/packages/jtaxios.js +31 -0
- package/vue.config.js +1 -1
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
@import "./_themes.scss";
|
|
2
|
+
//遍历主题map
|
|
3
|
+
@mixin themeify {
|
|
4
|
+
@each $theme-name, $theme-map in $themes {
|
|
5
|
+
//!global 把局部变量强升为全局变量
|
|
6
|
+
$theme-map: $theme-map !global;
|
|
7
|
+
//判断html的data-theme的属性值 #{}是sass的插值表达式
|
|
8
|
+
//& sass嵌套里的父容器标识 @content是混合器插槽,像vue的slot
|
|
9
|
+
[color-theme="#{$theme-name}"] & {
|
|
10
|
+
@content;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//声明一个根据Key获取颜色的function
|
|
16
|
+
@function themed($key) {
|
|
17
|
+
@return map-get($theme-map, $key);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
//获取主框架背景颜色
|
|
21
|
+
@mixin bg($color) {
|
|
22
|
+
@include themeify {
|
|
23
|
+
background-color: themed($color);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
@mixin _bg($color) {
|
|
28
|
+
@include themeify {
|
|
29
|
+
background-color: themed($color) !important;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
//获取主框架背景颜色
|
|
34
|
+
@mixin bgl($color) {
|
|
35
|
+
@include themeify {
|
|
36
|
+
background-image: themed($color);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@mixin _bgl($color) {
|
|
41
|
+
@include themeify {
|
|
42
|
+
background-image: themed($color) !important;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
//获取主框架背景颜色
|
|
47
|
+
@mixin bgi($path) {
|
|
48
|
+
@include themeify {
|
|
49
|
+
background-image: themed($path);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
//获取主框架字体颜色
|
|
54
|
+
@mixin txt($color) {
|
|
55
|
+
@include themeify {
|
|
56
|
+
color: themed($color);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
@mixin _txt($color) {
|
|
61
|
+
@include themeify {
|
|
62
|
+
color: themed($color) !important;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
//获取主框架边框颜色
|
|
67
|
+
@mixin bd($color,$p:null) {
|
|
68
|
+
@include themeify {
|
|
69
|
+
@if $p==null {
|
|
70
|
+
border-color: themed($color);
|
|
71
|
+
}
|
|
72
|
+
@if $p=='l' {
|
|
73
|
+
border-left-color: themed($color);
|
|
74
|
+
}
|
|
75
|
+
@if $p=='r' {
|
|
76
|
+
border-right-color: themed($color);
|
|
77
|
+
}
|
|
78
|
+
@if $p=='t' {
|
|
79
|
+
border-top-color: themed($color);
|
|
80
|
+
}
|
|
81
|
+
@if $p=='b' {
|
|
82
|
+
border-bottom-color: themed($color);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
//获取主框架边框颜色
|
|
88
|
+
@mixin _bd($color,$p:null) {
|
|
89
|
+
@include themeify {
|
|
90
|
+
@if $p==null {
|
|
91
|
+
border-color: themed($color) !important;
|
|
92
|
+
}
|
|
93
|
+
@if $p=='l' {
|
|
94
|
+
border-left-color: themed($color) !important;
|
|
95
|
+
}
|
|
96
|
+
@if $p=='r' {
|
|
97
|
+
border-right-color: themed($color) !important;
|
|
98
|
+
}
|
|
99
|
+
@if $p=='t' {
|
|
100
|
+
border-top-color: themed($color) !important;
|
|
101
|
+
}
|
|
102
|
+
@if $p=='b' {
|
|
103
|
+
border-bottom-color: themed($color) !important;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
//设置outline
|
|
108
|
+
@mixin ol($color) {
|
|
109
|
+
@include themeify {
|
|
110
|
+
outline:1px solid themed($color);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
//设置表格的边线
|
|
114
|
+
@mixin linear($color){
|
|
115
|
+
@include themeify {
|
|
116
|
+
background-image: linear-gradient(themed($color),themed($color)),linear-gradient(themed($color),themed($color));
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
@import './style1.scss';
|
|
120
|
+
@import './style2.scss';
|
|
121
|
+
@import './style3.scss';
|
|
122
|
+
|
|
123
|
+
//菜单1
|
|
124
|
+
.menu-one{
|
|
125
|
+
.mune-base ul{
|
|
126
|
+
background-color: #f2f2f2 !important;
|
|
127
|
+
.el-submenu__title,
|
|
128
|
+
.el-menu-item{
|
|
129
|
+
height:42px;
|
|
130
|
+
line-height: 41px;
|
|
131
|
+
i{
|
|
132
|
+
@include txt("textColor1");
|
|
133
|
+
}
|
|
134
|
+
span{
|
|
135
|
+
@include txt("textColor1");
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
>ul{
|
|
140
|
+
text-align: left;
|
|
141
|
+
.el-submenu__title,
|
|
142
|
+
.el-menu-item{
|
|
143
|
+
height:42px;
|
|
144
|
+
line-height: 41px;
|
|
145
|
+
i{
|
|
146
|
+
@include txt("iconColor");
|
|
147
|
+
}
|
|
148
|
+
span{
|
|
149
|
+
@include txt("textColor");
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
.el-submenu__title{
|
|
153
|
+
border:none !important;
|
|
154
|
+
padding-left: 10px;
|
|
155
|
+
padding-right: 0;
|
|
156
|
+
span{
|
|
157
|
+
@include size(150px,auto,$dp:inline-block,$ag:left);
|
|
158
|
+
@extend .text-oneline;
|
|
159
|
+
padding-right:15px;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
.el-menu-item {
|
|
163
|
+
padding-left: 10px;
|
|
164
|
+
padding-right: 10px;
|
|
165
|
+
span{
|
|
166
|
+
@include size(220px,auto,$dp:inline-block,$ag:left);
|
|
167
|
+
@extend .text-oneline;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
.el-menu--collapse>.el-submenu>.el-submenu__title .el-submenu__icon-arrow{
|
|
171
|
+
display: inline-block;
|
|
172
|
+
right:10px !important;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
.el-menu.el-menu--horizontal{
|
|
176
|
+
border:none;
|
|
177
|
+
}
|
|
178
|
+
.el-menu-item.is-active{
|
|
179
|
+
@include _bg('bgColor6');
|
|
180
|
+
span,i{
|
|
181
|
+
@include _txt('textColor');
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
//菜单移入效果
|
|
186
|
+
.el-menu-item:hover,
|
|
187
|
+
.el-submenu__title:hover{
|
|
188
|
+
@include _bg('bgColor6');
|
|
189
|
+
span,i{
|
|
190
|
+
@include _txt('textColor');
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
//加载条颜色
|
|
194
|
+
#nprogress .bar {
|
|
195
|
+
background: rgb(175, 111, 28) !important; //自定义颜色
|
|
196
|
+
}
|
|
197
|
+
//文字提示容器取消outline
|
|
198
|
+
.el-tooltip{
|
|
199
|
+
outline: none;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
@for $i from 0 through 4 {
|
|
203
|
+
.level#{$i}{
|
|
204
|
+
font-size: (15px - $i);
|
|
205
|
+
margin-left:6px;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
@mixin theme(){
|
|
210
|
+
[data-theme="primary1"]{
|
|
211
|
+
};
|
|
212
|
+
[data-theme="primary2"]{
|
|
213
|
+
};
|
|
214
|
+
[data-theme="primary3"]{
|
|
215
|
+
@extend .breadcrumb-jt;
|
|
216
|
+
};
|
|
217
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
$themes: (
|
|
2
|
+
blue: (
|
|
3
|
+
//字体
|
|
4
|
+
textColor: #fff,
|
|
5
|
+
textColor1:#333,
|
|
6
|
+
textColor2:#33B0FE,
|
|
7
|
+
//移入或选中字体颜色
|
|
8
|
+
_textColor:#eeda22,
|
|
9
|
+
//图标颜色
|
|
10
|
+
iconColor:#fff,
|
|
11
|
+
iconColor1:#0f6cb3,
|
|
12
|
+
//背景
|
|
13
|
+
bgColor1:#ffffff27,
|
|
14
|
+
bgColor2:#1479b1,
|
|
15
|
+
bgColor3-1:#e8eefcD9,
|
|
16
|
+
bgColor3-2:#4251baD9,
|
|
17
|
+
bgColor3-3:#1581a0D9,
|
|
18
|
+
bgColor5:#4683c4,
|
|
19
|
+
bgColor6:#2790c9,
|
|
20
|
+
bgColor7:#279ee2B3,
|
|
21
|
+
//渐变
|
|
22
|
+
linear1:linear-gradient(to right,#287ddfB3,#287ddfB3), //70%透明度
|
|
23
|
+
linear2:linear-gradient(to right,#dbe8f6,#dbe8f6),
|
|
24
|
+
linear3:linear-gradient(to right,#dbe8f6D9,#dbe8f6D9),
|
|
25
|
+
linear4:linear-gradient(to right,#295ab3,#236ebc),
|
|
26
|
+
//边框
|
|
27
|
+
bdColor: #789ddd,
|
|
28
|
+
bdColor1:#333,
|
|
29
|
+
bdColor2:#60e5f8,
|
|
30
|
+
bdColor3:#dbe8f6,
|
|
31
|
+
bdColor4:#b7cadb
|
|
32
|
+
),
|
|
33
|
+
black: (
|
|
34
|
+
//字体
|
|
35
|
+
textColor:#fff,
|
|
36
|
+
textColor1:#333,
|
|
37
|
+
textColor2:#dadada,
|
|
38
|
+
//移入或选中字体颜色
|
|
39
|
+
_textColor:#57f857,
|
|
40
|
+
//图标颜色
|
|
41
|
+
iconColor:#fff,
|
|
42
|
+
iconColor1:#787d81,
|
|
43
|
+
//背景
|
|
44
|
+
bgColor1:#2c2f36,
|
|
45
|
+
bgColor2:#094860,
|
|
46
|
+
bgColor3-1:#f0f0f0D9,
|
|
47
|
+
bgColor3-2:#161f30D9,
|
|
48
|
+
bgColor3-3:#07506cD9,
|
|
49
|
+
bgColor5:#787a80,
|
|
50
|
+
bgColor6:#989aa0,
|
|
51
|
+
bgColor7:#989aa0B3,
|
|
52
|
+
//渐变
|
|
53
|
+
linear1:linear-gradient(to right,#6f7071B3,#05040eB3), //70%透明度
|
|
54
|
+
linear2:linear-gradient(to right,#dddddd,#dddddd),
|
|
55
|
+
linear3:linear-gradient(to right,#ddddddD9,#ddddddD9),
|
|
56
|
+
linear4:linear-gradient(to right,#5b5f68,#5d5e62),
|
|
57
|
+
//边框
|
|
58
|
+
bdColor: #a0a08e,
|
|
59
|
+
bdColor1:#333,
|
|
60
|
+
bdColor2:#d1cfd0,
|
|
61
|
+
bdColor3:#dddddd,
|
|
62
|
+
bdColor4:#d0d3d6
|
|
63
|
+
),
|
|
64
|
+
purple: (
|
|
65
|
+
//字体
|
|
66
|
+
textColor:#fff,
|
|
67
|
+
textColor1:#333,
|
|
68
|
+
textColor2:#ca92f1,
|
|
69
|
+
//移入或选中字体颜色
|
|
70
|
+
_textColor:#57f857,
|
|
71
|
+
//图标颜色
|
|
72
|
+
iconColor:#fff,
|
|
73
|
+
iconColor1:#ab5fbe,
|
|
74
|
+
//背景
|
|
75
|
+
bgColor1:#552782,
|
|
76
|
+
bgColor2:#98298a,
|
|
77
|
+
bgColor3-1:#ffeff6D9,
|
|
78
|
+
bgColor3-2:#90377aD9,
|
|
79
|
+
bgColor3-3:#5375b9D9,
|
|
80
|
+
bgColor5:#733da3,
|
|
81
|
+
bgColor6:#9a52da,
|
|
82
|
+
bgColor7:#9a52daB3,
|
|
83
|
+
//渐变
|
|
84
|
+
linear1:linear-gradient(to right,#8351c2B3,#bd2e77B3), //70%透明度
|
|
85
|
+
linear2:linear-gradient(to right,#e6deeb,#e6deeb),
|
|
86
|
+
linear3:linear-gradient(to right,#e6deebD9,#e6deebD9),
|
|
87
|
+
linear4:linear-gradient(to right,#774ab8,#6c31a8),
|
|
88
|
+
//边框
|
|
89
|
+
bdColor: #ecc5e0,
|
|
90
|
+
bdColor1:#333,
|
|
91
|
+
bdColor2:#b379e7,
|
|
92
|
+
bdColor3:#e6deeb,
|
|
93
|
+
bdColor4:#d0d3d6
|
|
94
|
+
)
|
|
95
|
+
);
|
|
File without changes
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
.breadcrumb-jt{
|
|
2
|
+
.breadcrumb-box{
|
|
3
|
+
.breadcrumb-txt{
|
|
4
|
+
// @include _txt('textColor');
|
|
5
|
+
color:#333 !important;
|
|
6
|
+
}
|
|
7
|
+
.breadcrumb-label{
|
|
8
|
+
color:#333 !important;
|
|
9
|
+
// @include _txt('textColor');
|
|
10
|
+
}
|
|
11
|
+
.el-icon-arrow-right{
|
|
12
|
+
color:#333 !important;
|
|
13
|
+
// @include _txt('textColor');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
//设置容器
|
|
2
|
+
@mixin size($width:auto,$height:auto,$bg:null,$lh:false,$rd:null,$ag:null,$dp:null,$bd:null,$cp:false,$of:null) {
|
|
3
|
+
width:$width;
|
|
4
|
+
height:$height;
|
|
5
|
+
@if $bg{
|
|
6
|
+
background-color:$bg;
|
|
7
|
+
}
|
|
8
|
+
@if $lh{
|
|
9
|
+
line-height: $height;
|
|
10
|
+
}
|
|
11
|
+
@if $rd{
|
|
12
|
+
border-radius: $rd;
|
|
13
|
+
}
|
|
14
|
+
@if $ag{
|
|
15
|
+
text-align: $ag;
|
|
16
|
+
}
|
|
17
|
+
@if $dp{
|
|
18
|
+
display: $dp;
|
|
19
|
+
}
|
|
20
|
+
@if $bd{
|
|
21
|
+
border:$bd;
|
|
22
|
+
}
|
|
23
|
+
@if $cp{
|
|
24
|
+
cursor: pointer;
|
|
25
|
+
}
|
|
26
|
+
@if $of{
|
|
27
|
+
overflow: $of;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//设置字体
|
|
31
|
+
@mixin font($color:#fff,$size:14px,$sp:null,$dc:null,$ws:false,$cp:false,$ff:null){
|
|
32
|
+
color:$color;
|
|
33
|
+
font-size:$size;
|
|
34
|
+
@if $sp {
|
|
35
|
+
letter-spacing:$sp;
|
|
36
|
+
}
|
|
37
|
+
@if $dc {
|
|
38
|
+
text-decoration: $dc;
|
|
39
|
+
}
|
|
40
|
+
@if $ws{
|
|
41
|
+
white-space:nowrap;
|
|
42
|
+
}
|
|
43
|
+
@if $cp{
|
|
44
|
+
cursor: pointer;
|
|
45
|
+
}
|
|
46
|
+
@if $ff{
|
|
47
|
+
font-family: $ff;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//绝对定位撑满容器
|
|
51
|
+
@mixin absolute-full($top:0,$right:0,$bottom:0,$left:0,$zi:null){
|
|
52
|
+
position: absolute;
|
|
53
|
+
top:$top;
|
|
54
|
+
right:$right;
|
|
55
|
+
bottom:$bottom;
|
|
56
|
+
left:$left;
|
|
57
|
+
@if $zi{
|
|
58
|
+
z-index:$zi
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//绝对定位 top left
|
|
62
|
+
@mixin absolute-top-left($top:0,$left:0){
|
|
63
|
+
position: absolute;
|
|
64
|
+
top:$top;
|
|
65
|
+
left:$left;
|
|
66
|
+
}
|
|
67
|
+
//绝对定位 top right
|
|
68
|
+
@mixin absolute-top-right($top:0,$right:0){
|
|
69
|
+
position: absolute;
|
|
70
|
+
top:$top;
|
|
71
|
+
right:$right;
|
|
72
|
+
}
|
|
73
|
+
//绝对定位 bottom left
|
|
74
|
+
@mixin absolute-bottom-left($bottom:0,$left:0){
|
|
75
|
+
position: absolute;
|
|
76
|
+
bottom:$bottom;
|
|
77
|
+
left:$left;
|
|
78
|
+
}
|
|
79
|
+
//绝对定位 bottom right
|
|
80
|
+
@mixin absolute-bottom-right($bottom:0,$right:0){
|
|
81
|
+
position: absolute;
|
|
82
|
+
bottom:$bottom;
|
|
83
|
+
right:$right;
|
|
84
|
+
}
|
|
85
|
+
//设置背景
|
|
86
|
+
@mixin background($type:'color',$val:#fff){
|
|
87
|
+
@if $type == 'color' {
|
|
88
|
+
background-color: $val;
|
|
89
|
+
}@else if $type == 'img' {
|
|
90
|
+
background-image: $val;
|
|
91
|
+
background-size: 100%;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
// 文字省略:单行
|
|
95
|
+
.text-oneline {
|
|
96
|
+
white-space: nowrap;
|
|
97
|
+
overflow: hidden;
|
|
98
|
+
text-overflow: ellipsis;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
//不知宽高的元素绝对居中
|
|
102
|
+
.el-center {
|
|
103
|
+
@include absolute-top-left(50%,50%);
|
|
104
|
+
transform: translate(-50%,-50%);
|
|
105
|
+
}
|
|
106
|
+
//相对定位
|
|
107
|
+
.relative{
|
|
108
|
+
position: relative;
|
|
109
|
+
}
|
|
110
|
+
//相对定位垂直居中
|
|
111
|
+
.middle{
|
|
112
|
+
position: relative;
|
|
113
|
+
top:50%;
|
|
114
|
+
transform: translateY(-50%);
|
|
115
|
+
}
|
|
116
|
+
//滚动条样式
|
|
117
|
+
@mixin scrollBarStyle($w:2px,$h:2px,$c:#989ba380) {
|
|
118
|
+
&::-webkit-scrollbar {
|
|
119
|
+
width: $w;
|
|
120
|
+
height: $h;
|
|
121
|
+
display: none;
|
|
122
|
+
}
|
|
123
|
+
&:hover::-webkit-scrollbar{
|
|
124
|
+
display: block;
|
|
125
|
+
}
|
|
126
|
+
&::-webkit-scrollbar-thumb {
|
|
127
|
+
border-radius: 10px;
|
|
128
|
+
background:$c;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
//滚动条样式
|
|
133
|
+
@mixin scrollBarStyle1($w:2px,$h:2px,$c:#989ba380) {
|
|
134
|
+
&::-webkit-scrollbar {
|
|
135
|
+
width: $w;
|
|
136
|
+
height: $h;
|
|
137
|
+
}
|
|
138
|
+
&::-webkit-scrollbar-thumb {
|
|
139
|
+
border-radius: 10px;
|
|
140
|
+
background:$c;
|
|
141
|
+
}
|
|
142
|
+
}
|