byt-ui 0.0.16 → 0.0.17
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/README.md +108 -10
- package/lib/byt-ui.common.js +59 -36
- package/lib/byt-ui.css +1 -1
- package/lib/byt-ui.umd.js +59 -36
- package/lib/byt-ui.umd.min.js +1 -1
- package/package.json +1 -1
- package/packages/components/basic-view/demo.vue +74 -4
- package/packages/components/basic-view/index.vue +12 -18
- package/packages/components/form-view/index.vue +36 -11
package/package.json
CHANGED
|
@@ -29,16 +29,83 @@
|
|
|
29
29
|
</template>
|
|
30
30
|
|
|
31
31
|
<script>
|
|
32
|
+
import moment from "moment"
|
|
32
33
|
export default {
|
|
33
|
-
name: 'demo',
|
|
34
|
+
name: 'default-demo',
|
|
34
35
|
components: {},
|
|
35
36
|
data() {
|
|
36
37
|
return {
|
|
37
38
|
searchList: [
|
|
38
39
|
{
|
|
39
|
-
label: '
|
|
40
|
-
key: '
|
|
41
|
-
type: 'input'
|
|
40
|
+
label: '输入框',
|
|
41
|
+
key: 'input',
|
|
42
|
+
type: 'input',
|
|
43
|
+
default:"abc"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
label: '下拉框',
|
|
47
|
+
key: 'select',
|
|
48
|
+
type: 'select',
|
|
49
|
+
default:1,
|
|
50
|
+
options:[
|
|
51
|
+
{label:"a",value:1},
|
|
52
|
+
{label:"b",value:2},
|
|
53
|
+
{label:"c",value:3},
|
|
54
|
+
{label:"d",value:4}
|
|
55
|
+
]
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
label: '级联选择',
|
|
59
|
+
key: 'cascader',
|
|
60
|
+
type: 'cascader',
|
|
61
|
+
default:"yizhi",
|
|
62
|
+
options:[{
|
|
63
|
+
value: 'zhinan',
|
|
64
|
+
label: '指南',
|
|
65
|
+
children: [{
|
|
66
|
+
value: 'shejiyuanze',
|
|
67
|
+
label: '设计原则',
|
|
68
|
+
children: [{
|
|
69
|
+
value: 'yizhi',
|
|
70
|
+
label: '一致'
|
|
71
|
+
}, {
|
|
72
|
+
value: 'fankui',
|
|
73
|
+
label: '反馈'
|
|
74
|
+
}, {
|
|
75
|
+
value: 'xiaolv',
|
|
76
|
+
label: '效率'
|
|
77
|
+
}, {
|
|
78
|
+
value: 'kekong',
|
|
79
|
+
label: '可控'
|
|
80
|
+
}]
|
|
81
|
+
}]
|
|
82
|
+
}]
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
label: '年月日',
|
|
86
|
+
key: 'date',
|
|
87
|
+
type: 'datepicker',
|
|
88
|
+
default:moment().format("YYYY-MM-DD")
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
label: '年月',
|
|
92
|
+
key: 'month',
|
|
93
|
+
type: 'datepicker',
|
|
94
|
+
fields:"month",
|
|
95
|
+
default:moment().format("YYYY-MM")
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
label: '年',
|
|
99
|
+
key: 'year',
|
|
100
|
+
type: 'datepicker',
|
|
101
|
+
fields:"year",
|
|
102
|
+
default:moment().format("YYYY")
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
label: '日期区间',
|
|
106
|
+
key: 'daterange',
|
|
107
|
+
type: 'daterange',
|
|
108
|
+
default:["2023-06-05","2023-06-07"]
|
|
42
109
|
}
|
|
43
110
|
],
|
|
44
111
|
tableData: [],
|
|
@@ -79,6 +146,9 @@ export default {
|
|
|
79
146
|
},
|
|
80
147
|
refreshChange() {
|
|
81
148
|
this.$refs.baseView.refresh();
|
|
149
|
+
},
|
|
150
|
+
onClear(){
|
|
151
|
+
this.$refs.baseView.clear();
|
|
82
152
|
}
|
|
83
153
|
}
|
|
84
154
|
}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* @Description:
|
|
3
3
|
* @Author: 王国火
|
|
4
4
|
* @Date: 2022-07-12 17:47:20
|
|
5
|
-
* @LastEditTime:
|
|
6
|
-
* @LastEditors:
|
|
5
|
+
* @LastEditTime: 2023-06-07 08:31:20
|
|
6
|
+
* @LastEditors: 王国火
|
|
7
7
|
-->
|
|
8
8
|
|
|
9
9
|
<template>
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
:search-list="searchList"
|
|
18
18
|
@search="onSearch"
|
|
19
19
|
@reset="onReset"
|
|
20
|
+
@init="init"
|
|
20
21
|
v-model="searchForm"
|
|
21
22
|
></FormView>
|
|
22
23
|
</div>
|
|
@@ -196,10 +197,14 @@ export default {
|
|
|
196
197
|
}
|
|
197
198
|
},
|
|
198
199
|
mounted() {
|
|
199
|
-
|
|
200
|
-
if (this.autoLoad) this.fetchData();
|
|
200
|
+
|
|
201
201
|
},
|
|
202
202
|
methods: {
|
|
203
|
+
init(form){
|
|
204
|
+
this.searchForm=Object.assign({},this.searchForm,form);
|
|
205
|
+
// 有些特殊情况需要手动请求列表数据
|
|
206
|
+
if (this.autoLoad) this.fetchData();
|
|
207
|
+
},
|
|
203
208
|
onSelectAllEvent(list) {
|
|
204
209
|
/** 多选框全选触发
|
|
205
210
|
* @event checkbox-all
|
|
@@ -259,6 +264,9 @@ export default {
|
|
|
259
264
|
this.searchForm = {};
|
|
260
265
|
this.fetchData();
|
|
261
266
|
},
|
|
267
|
+
clear(){
|
|
268
|
+
this.$refs.search.init();
|
|
269
|
+
},
|
|
262
270
|
onSizeChange(size) {
|
|
263
271
|
this.pageOpt.pageSize = size;
|
|
264
272
|
this.pageOpt.page = 1;
|
|
@@ -271,13 +279,6 @@ export default {
|
|
|
271
279
|
this.$nextTick(() => {
|
|
272
280
|
this.fetchData();
|
|
273
281
|
})
|
|
274
|
-
},
|
|
275
|
-
initForm(list) {
|
|
276
|
-
list.map(v => {
|
|
277
|
-
if (v.value || v.value == 0) {
|
|
278
|
-
this.$set(this.searchForm, v.key, v.value)
|
|
279
|
-
}
|
|
280
|
-
})
|
|
281
282
|
}
|
|
282
283
|
},
|
|
283
284
|
watch: {
|
|
@@ -289,13 +290,6 @@ export default {
|
|
|
289
290
|
},
|
|
290
291
|
immediate: true,
|
|
291
292
|
deep: true
|
|
292
|
-
},
|
|
293
|
-
searchList: {
|
|
294
|
-
handler(val) {
|
|
295
|
-
this.initForm(val)
|
|
296
|
-
},
|
|
297
|
-
immediate: true,
|
|
298
|
-
deep: true
|
|
299
293
|
}
|
|
300
294
|
}
|
|
301
295
|
}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* @Description:
|
|
3
3
|
* @Author: 王国火
|
|
4
4
|
* @Date: 2022-07-13 08:46:34
|
|
5
|
-
* @LastEditTime:
|
|
6
|
-
* @LastEditors:
|
|
5
|
+
* @LastEditTime: 2023-06-07 08:53:12
|
|
6
|
+
* @LastEditors: 王国火
|
|
7
7
|
-->
|
|
8
8
|
<!-- -->
|
|
9
9
|
<template>
|
|
@@ -58,7 +58,6 @@
|
|
|
58
58
|
:picker-options="pickerOptions"
|
|
59
59
|
>
|
|
60
60
|
</el-date-picker>
|
|
61
|
-
<!-- fields可选值:date、month、year -->
|
|
62
61
|
</template>
|
|
63
62
|
</el-form-item>
|
|
64
63
|
|
|
@@ -131,7 +130,9 @@ export default {
|
|
|
131
130
|
},
|
|
132
131
|
components: {},
|
|
133
132
|
computed: {},
|
|
134
|
-
mounted() {
|
|
133
|
+
mounted() {
|
|
134
|
+
|
|
135
|
+
},
|
|
135
136
|
methods: {
|
|
136
137
|
formateDate(type) {
|
|
137
138
|
// date、week 、month、year
|
|
@@ -169,17 +170,41 @@ export default {
|
|
|
169
170
|
if (v)resolve(v)
|
|
170
171
|
})
|
|
171
172
|
})
|
|
173
|
+
},
|
|
174
|
+
setDefaultVal(el) {
|
|
175
|
+
// 处理默认值,可拓展
|
|
176
|
+
const dval = el.default;// 默认值
|
|
177
|
+
switch (el.type) {
|
|
178
|
+
case 'input':
|
|
179
|
+
case 'select':
|
|
180
|
+
return (dval === 0 || dval === '0') ? dval : (dval || '')
|
|
181
|
+
case 'inputNumber':
|
|
182
|
+
return dval === 0 ? dval : (dval || null)
|
|
183
|
+
case 'treeSelect':
|
|
184
|
+
return [];
|
|
185
|
+
default:
|
|
186
|
+
return (dval === 0 || dval === '0') ? dval : (dval || '')
|
|
187
|
+
}
|
|
188
|
+
},
|
|
189
|
+
formatForm(list) {
|
|
190
|
+
//有些查询条件初始携带默认值,需要处理;
|
|
191
|
+
this.form = Object.assign({}, this.form, list.reduce((obj, el) => {
|
|
192
|
+
obj[el.key] = this.setDefaultVal(el)
|
|
193
|
+
return obj
|
|
194
|
+
}, {}))
|
|
195
|
+
},
|
|
196
|
+
init(){
|
|
197
|
+
this.formatForm(this.searchList);
|
|
198
|
+
this.$emit('init', this.form)
|
|
172
199
|
}
|
|
173
200
|
},
|
|
174
201
|
watch: {
|
|
175
|
-
|
|
176
|
-
handler(
|
|
177
|
-
|
|
178
|
-
this.form = Object.assign({}, this.form, val);
|
|
179
|
-
}
|
|
202
|
+
searchList:{
|
|
203
|
+
handler(){
|
|
204
|
+
this.init();
|
|
180
205
|
},
|
|
181
|
-
immediate:
|
|
182
|
-
deep:
|
|
206
|
+
immediate:true,
|
|
207
|
+
deep:true
|
|
183
208
|
},
|
|
184
209
|
form: {
|
|
185
210
|
handler(val) {
|