mali-applet-ui 1.0.91 → 1.0.93
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/lib/components/ml-list-select-user-page/ml-list-select-user-page.vue +50 -43
- package/lib/components/ml-month-picker/ml-month-picker.vue +2 -1
- package/lib/components/ml-number-input/ml-number-input.vue +1 -4
- package/lib/components/ml-select-picker/ml-select-picker.vue +2 -1
- package/lib/components/ml-tree/ml-tree.vue +11 -3
- package/lib/components/ml-year-picker/ml-year-picker.vue +2 -1
- package/package.json +1 -1
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<view class="ml-list-select-user-page" :class="[className || '', {'is-border': border, 'is-disabled': disabled}]" @tap="tapEvent">
|
|
3
|
-
<view
|
|
4
|
-
<view class="ml-list-select-user-
|
|
5
|
-
<
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
<view
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
<ml-icon name="close" />
|
|
3
|
+
<view class="ml-list-select-user-list">
|
|
4
|
+
<view v-for="(item, index) in selectRows" :key="index" class="ml-list-select-user-item">
|
|
5
|
+
<view class="ml-list-select-user-name">
|
|
6
|
+
<view class="ml-list-select-user-content">{{ item[optLabelField] }}</view>
|
|
7
|
+
</view>
|
|
8
|
+
<view v-if="clearable" class="ml-list-select-user-del-item" @click="removeItem(item)">
|
|
9
|
+
<ml-icon name="close" />
|
|
10
|
+
</view>
|
|
12
11
|
</view>
|
|
13
12
|
</view>
|
|
14
13
|
<view class="ml-list-select-user-add-item" @click="openUserEvent">
|
|
15
14
|
<view class="ml-list-select-user-add-btn">
|
|
16
|
-
<ml-icon name="add" />
|
|
15
|
+
<ml-icon name="add-circle" />
|
|
17
16
|
</view>
|
|
18
17
|
</view>
|
|
19
18
|
</view>
|
|
@@ -67,11 +66,18 @@ export default {
|
|
|
67
66
|
return XEUtils.eqNull(this.value) || this.value === ''
|
|
68
67
|
},
|
|
69
68
|
selectRows () {
|
|
70
|
-
return []
|
|
69
|
+
return this.dataList.filter(item => this.value.includes(item[this.optValueField]))
|
|
71
70
|
}
|
|
72
71
|
},
|
|
73
72
|
methods: {
|
|
74
73
|
tapEvent () {
|
|
74
|
+
if (this.disabled) {
|
|
75
|
+
return
|
|
76
|
+
}
|
|
77
|
+
this.$emit('tap', {})
|
|
78
|
+
this.$emit('click', {})
|
|
79
|
+
},
|
|
80
|
+
openUserEvent () {
|
|
75
81
|
if (this.disabled) {
|
|
76
82
|
return
|
|
77
83
|
}
|
|
@@ -95,8 +101,11 @@ export default {
|
|
|
95
101
|
}
|
|
96
102
|
}
|
|
97
103
|
})
|
|
98
|
-
|
|
99
|
-
|
|
104
|
+
},
|
|
105
|
+
removeItem (item) {
|
|
106
|
+
const value = this.value.filter(key => key !== item[this.optValueField])
|
|
107
|
+
this.$emit('input', value)
|
|
108
|
+
this.$emit('change', { value })
|
|
100
109
|
},
|
|
101
110
|
clearEvent () {
|
|
102
111
|
let value = null
|
|
@@ -115,13 +124,26 @@ export default {
|
|
|
115
124
|
display: flex;
|
|
116
125
|
flex-direction: row;
|
|
117
126
|
flex-wrap: wrap;
|
|
118
|
-
.ml-list-select-user-
|
|
127
|
+
.ml-list-select-user-list {
|
|
128
|
+
display: flex;
|
|
129
|
+
flex-direction: row;
|
|
130
|
+
flex-wrap: wrap;
|
|
131
|
+
min-height: 70rpx;
|
|
132
|
+
}
|
|
133
|
+
.ml-list-select-user-item {
|
|
134
|
+
display: flex;
|
|
135
|
+
flex-direction: row;
|
|
136
|
+
align-items: center;
|
|
137
|
+
margin: 8rpx;
|
|
138
|
+
padding: 8rpx 16rpx;
|
|
139
|
+
border-radius: $ml-page-interval-margin;
|
|
140
|
+
background: #F2F2F6;
|
|
141
|
+
}
|
|
119
142
|
.ml-list-select-user-add-item {
|
|
120
|
-
position:
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
text-align: center;
|
|
143
|
+
position: absolute;
|
|
144
|
+
top: -74rpx;
|
|
145
|
+
right: 20rpx;
|
|
146
|
+
font-size: 44rpx;
|
|
125
147
|
}
|
|
126
148
|
.ml-list-select-user-img {
|
|
127
149
|
width: 50rpx;
|
|
@@ -130,32 +152,17 @@ export default {
|
|
|
130
152
|
overflow: hidden;
|
|
131
153
|
}
|
|
132
154
|
.ml-list-select-user-name {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
height: 80rpx;
|
|
141
|
-
line-height: 80rpx;
|
|
142
|
-
text-align: center;
|
|
143
|
-
color: $uni-color-primary;
|
|
144
|
-
background: #DAE6FF;
|
|
145
|
-
border-radius: 50%;
|
|
146
|
-
font-size: 56rpx;
|
|
155
|
+
.ml-list-select-user-content {
|
|
156
|
+
font-size: 28rpx;
|
|
157
|
+
max-width: 140rpx;
|
|
158
|
+
overflow: hidden;
|
|
159
|
+
text-overflow: ellipsis;
|
|
160
|
+
white-space: nowrap;
|
|
161
|
+
}
|
|
147
162
|
}
|
|
148
163
|
.ml-list-select-user-del-item {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
right: 0;
|
|
152
|
-
color: #fff;
|
|
153
|
-
width: 40rpx;
|
|
154
|
-
height: 40rpx;
|
|
155
|
-
line-height: 40rpx;
|
|
156
|
-
font-size: 30rpx;
|
|
157
|
-
border-radius: 50%;
|
|
158
|
-
background: rgba(0, 0, 0, 0.45);
|
|
164
|
+
flex-shrink: 0;
|
|
165
|
+
margin-left: 16rpx;
|
|
159
166
|
}
|
|
160
167
|
}
|
|
161
168
|
</style>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<picker :value="value" class="ml-month-picker" mode="date" fields="month" @change="changeEvent">
|
|
2
|
+
<picker :value="value" :disabled="disabled" class="ml-month-picker" mode="date" fields="month" @change="changeEvent">
|
|
3
3
|
<view class="ml-month-picker-warpper" :class="[className || '', {'is-border': border}]">
|
|
4
4
|
<view class="ml-month-picker-text">{{ value || '请选择' }}</view>
|
|
5
5
|
<view class="ml-month-picker-icon">
|
|
@@ -18,6 +18,7 @@ export default {
|
|
|
18
18
|
props: {
|
|
19
19
|
value: String,
|
|
20
20
|
border: Boolean,
|
|
21
|
+
disabled: Boolean,
|
|
21
22
|
className: String
|
|
22
23
|
},
|
|
23
24
|
methods: {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<view v-if="isFromReadonly" class="ml-select-picker is-readonly">
|
|
3
3
|
<view class="ml-select-picker-readonly-content">{{ selectLabel }}</view>
|
|
4
4
|
</view>
|
|
5
|
-
<picker v-else class="ml-select-picker" mode="selector" :value="selectIndex" :style="{width: width || '100%'}" :range="optionList" :range-key="optLabelField" @change="changeEvent">
|
|
5
|
+
<picker v-else class="ml-select-picker" mode="selector" :value="selectIndex" :disabled="disabled" :style="{width: width || '100%'}" :range="optionList" :range-key="optLabelField" @change="changeEvent">
|
|
6
6
|
<view class="ml-select-picker-warpper" :class="[className || '', {'is-border': border, 'is-clear': value !== null}]">
|
|
7
7
|
<view class="ml-select-picker-text">
|
|
8
8
|
<view v-if="value !== null" class="ml-select-picker-label">{{ selectLabel }}</view>
|
|
@@ -33,6 +33,7 @@ export default {
|
|
|
33
33
|
type: String,
|
|
34
34
|
default: '请选择'
|
|
35
35
|
},
|
|
36
|
+
disabled: Boolean,
|
|
36
37
|
clearable: Boolean,
|
|
37
38
|
readonly: Boolean,
|
|
38
39
|
options: Array,
|
|
@@ -29,7 +29,14 @@ export default {
|
|
|
29
29
|
// 复选框
|
|
30
30
|
showCheckbox: Boolean,
|
|
31
31
|
// (复选框)父子不关联
|
|
32
|
-
checkStrictly:
|
|
32
|
+
checkStrictly: {
|
|
33
|
+
type: Boolean,
|
|
34
|
+
default: false
|
|
35
|
+
},
|
|
36
|
+
indeterminateToChecked: {
|
|
37
|
+
type: Boolean,
|
|
38
|
+
default: false
|
|
39
|
+
},
|
|
33
40
|
checkRowKeys: Array,
|
|
34
41
|
halfRowKeys: Array,
|
|
35
42
|
nodeProps: Object
|
|
@@ -84,6 +91,7 @@ export default {
|
|
|
84
91
|
},
|
|
85
92
|
created () {
|
|
86
93
|
this.treeData = this.data
|
|
94
|
+
this.initCheckboxRows(this.checkRowKeys)
|
|
87
95
|
},
|
|
88
96
|
methods: {
|
|
89
97
|
selectCheckboxNodeEvent ({ nodeData, nodeKey }) {
|
|
@@ -186,7 +194,7 @@ export default {
|
|
|
186
194
|
updateCheckStatus () {
|
|
187
195
|
const { keyField } = this
|
|
188
196
|
this.isAllCheckboxChecked = this.treeData.every(item => this.selectCheckboxRowKeys.includes(item[keyField]))
|
|
189
|
-
this.isAllCheckboxIndeterminate = !this.isAllCheckboxChecked && this.treeData.some(item => this.selectCheckboxRowKeys.includes(item[keyField]))
|
|
197
|
+
this.isAllCheckboxIndeterminate = !this.isAllCheckboxChecked && this.treeData.some(item => this.selectCheckboxRowKeys.includes(item[keyField]) || this.indeterminateRowKeys.includes(item[keyField]))
|
|
190
198
|
},
|
|
191
199
|
initCheckboxRows (selecKeys) {
|
|
192
200
|
this.selectCheckboxRowKeys = []
|
|
@@ -258,6 +266,7 @@ export default {
|
|
|
258
266
|
.ml-tree {
|
|
259
267
|
padding-left: 16rpx;
|
|
260
268
|
overflow: auto;
|
|
269
|
+
background: #ffffff;
|
|
261
270
|
.ml-tree-checkbox-btns {
|
|
262
271
|
position: sticky;
|
|
263
272
|
left: 0;
|
|
@@ -267,7 +276,6 @@ export default {
|
|
|
267
276
|
align-items: center;
|
|
268
277
|
height: 80rpx;
|
|
269
278
|
border-bottom: 1px solid #e5e5e5;
|
|
270
|
-
background: #ffffff;
|
|
271
279
|
}
|
|
272
280
|
.ml-tree-checkbox-btns-left {
|
|
273
281
|
flex-grow: 1;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<picker :value="value" class="ml-year-picker" mode="date" fields="year" @change="changeEvent">
|
|
2
|
+
<picker :value="value" :disabled="disabled" class="ml-year-picker" mode="date" fields="year" @change="changeEvent">
|
|
3
3
|
<view class="ml-year-picker-warpper" :class="[className || '', {'is-border': border}]">
|
|
4
4
|
<view class="ml-year-picker-text">{{ value || '请选择' }}</view>
|
|
5
5
|
<view class="ml-year-picker-icon">
|
|
@@ -18,6 +18,7 @@ export default {
|
|
|
18
18
|
props: {
|
|
19
19
|
value: String,
|
|
20
20
|
border: Boolean,
|
|
21
|
+
disabled: Boolean,
|
|
21
22
|
className: String
|
|
22
23
|
},
|
|
23
24
|
methods: {
|