Commit 5dd7b190787ef1a19a5335da17f08bf0a3be8bff
Committed by
GitHub
Merge pull request #3672 from Xotic750/normalise_click_outside
Normalise v-click-outside-x for Select
Showing
2 changed files
with
679 additions
and
486 deletions
Show diff stats
examples/routers/select.vue
1 | 1 | <!--<template>--> |
2 | -<!--<div>--> | |
3 | -<!--{{ model10 }} - --> | |
4 | -<!--{{ model11 }}--> | |
5 | -<!--<Select v-model="model10" style="width:260px">--> | |
6 | -<!--<Option v-for="(item, index) in cityList" :value="item.value" :key="index">{{ item.label }}</Option>--> | |
7 | -<!--</Select>--> | |
8 | -<!--<Select v-model="model11" style="width:260px">--> | |
9 | -<!--<Option v-for="(item, index) in cityList" :value="item.value" :key="index">{{ item.label }}</Option>--> | |
10 | -<!--</Select>--> | |
11 | -<!--</div>--> | |
2 | + <!--<div>--> | |
3 | + <!--{{model10}} - --> | |
4 | + <!--{{model11}}--> | |
5 | + <!--<Select --> | |
6 | + <!--v-model="model10" --> | |
7 | + <!--style="width:260px">--> | |
8 | + <!--<Option --> | |
9 | + <!--v-for="(item, index) in cityList" --> | |
10 | + <!--:value="item.value" --> | |
11 | + <!--:key="index">{{item.label}}</Option>--> | |
12 | + <!--</Select>--> | |
13 | + <!--<Select --> | |
14 | + <!--v-model="model11" --> | |
15 | + <!--style="width:260px">--> | |
16 | + <!--<Option --> | |
17 | + <!--v-for="(item, index) in cityList" --> | |
18 | + <!--:value="item.value" --> | |
19 | + <!--:key="index">{{item.label}}</Option>--> | |
20 | + <!--</Select>--> | |
21 | + <!--</div>--> | |
12 | 22 | <!--</template>--> |
13 | 23 | <!--<script>--> |
14 | 24 | <!--export default {--> |
15 | -<!--data () {--> | |
16 | -<!--return {--> | |
17 | -<!--cityList: [],--> | |
18 | -<!--model10: '',--> | |
19 | -<!--model11: '',--> | |
20 | -<!--model12: ''--> | |
21 | -<!--}--> | |
22 | -<!--},--> | |
23 | -<!--mounted () {--> | |
24 | -<!--setTimeout(() => {--> | |
25 | -<!--this.cityList = [--> | |
26 | -<!--{--> | |
27 | -<!--value: 'beijing',--> | |
28 | -<!--label: '北京市'--> | |
29 | -<!--},--> | |
30 | -<!--{--> | |
31 | -<!--value: 'shanghai',--> | |
32 | -<!--label: '上海市'--> | |
33 | -<!--},--> | |
34 | -<!--{--> | |
35 | -<!--value: 'shenzhen',--> | |
36 | -<!--label: '深圳市'--> | |
37 | -<!--},--> | |
38 | -<!--{--> | |
39 | -<!--value: 'hangzhou',--> | |
40 | -<!--label: '杭州市'--> | |
41 | -<!--},--> | |
42 | -<!--{--> | |
43 | -<!--value: 'nanjing',--> | |
44 | -<!--label: '南京市'--> | |
45 | -<!--},--> | |
46 | -<!--{--> | |
47 | -<!--value: 'chongqing',--> | |
48 | -<!--label: '重庆市'--> | |
49 | -<!--}--> | |
50 | -<!--];--> | |
51 | -<!--}, 1000);--> | |
52 | -<!--}--> | |
53 | -<!--}--> | |
25 | + <!--data() {--> | |
26 | + <!--return {--> | |
27 | + <!--cityList: [],--> | |
28 | + <!--model10: '',--> | |
29 | + <!--model11: '',--> | |
30 | + <!--model12: '',--> | |
31 | + <!--};--> | |
32 | + <!--},--> | |
33 | + <!--mounted() {--> | |
34 | + <!--setTimeout(() => {--> | |
35 | + <!--this.cityList = [--> | |
36 | + <!--{--> | |
37 | + <!--value: 'beijing',--> | |
38 | + <!--label: '北京市',--> | |
39 | + <!--},--> | |
40 | + <!--{--> | |
41 | + <!--value: 'shanghai',--> | |
42 | + <!--label: '上海市',--> | |
43 | + <!--},--> | |
44 | + <!--{--> | |
45 | + <!--value: 'shenzhen',--> | |
46 | + <!--label: '深圳市',--> | |
47 | + <!--},--> | |
48 | + <!--{--> | |
49 | + <!--value: 'hangzhou',--> | |
50 | + <!--label: '杭州市',--> | |
51 | + <!--},--> | |
52 | + <!--{--> | |
53 | + <!--value: 'nanjing',--> | |
54 | + <!--label: '南京市',--> | |
55 | + <!--},--> | |
56 | + <!--{--> | |
57 | + <!--value: 'chongqing',--> | |
58 | + <!--label: '重庆市',--> | |
59 | + <!--},--> | |
60 | + <!--];--> | |
61 | + <!--}, 1000);--> | |
62 | + <!--},--> | |
63 | +<!--};--> | |
54 | 64 | <!--</script>--> |
55 | 65 | |
56 | 66 | <!--<template>--> |
57 | -<!--<div>--> | |
58 | -<!--<Select v-model="value">--> | |
59 | -<!--<Option v-for="item in list" :value="item.value" :label="item.label" :key="item.value"></Option>--> | |
60 | -<!--</Select>--> | |
61 | -<!--<Button @click="setList">set list</Button>--> | |
62 | -<!--</div>--> | |
67 | + <!--<div>--> | |
68 | + <!--<Select v-model="value">--> | |
69 | + <!--<Option --> | |
70 | + <!--v-for="item in list" --> | |
71 | + <!--:value="item.value" --> | |
72 | + <!--:label="item.label" --> | |
73 | + <!--:key="item.value"></Option>--> | |
74 | + <!--</Select>--> | |
75 | + <!--<Button @click="setList">set list</Button>--> | |
76 | + <!--</div>--> | |
63 | 77 | <!--</template>--> |
64 | 78 | <!--<script>--> |
65 | 79 | <!--export default {--> |
66 | -<!--data () {--> | |
67 | -<!--return {--> | |
68 | -<!--value: '',--> | |
69 | -<!--list: []--> | |
70 | -<!--}--> | |
71 | -<!--},--> | |
72 | -<!--methods: {--> | |
73 | -<!--setList () {--> | |
74 | -<!--let list = [];--> | |
75 | -<!--for (let i = 0; i < 400; i++) {--> | |
76 | -<!--list.push({--> | |
77 | -<!--value: 'value' + i,--> | |
78 | -<!--label: 'label' + i--> | |
79 | -<!--});--> | |
80 | -<!--}--> | |
81 | -<!--this.list = list;--> | |
82 | -<!--}--> | |
83 | -<!--}--> | |
84 | -<!--}--> | |
80 | + <!--data() {--> | |
81 | + <!--return {--> | |
82 | + <!--value: '',--> | |
83 | + <!--list: [],--> | |
84 | + <!--};--> | |
85 | + <!--},--> | |
86 | + <!--methods: {--> | |
87 | + <!--setList() {--> | |
88 | + <!--const list = [];--> | |
89 | + <!--for (let i = 0; i < 400; i++) {--> | |
90 | + <!--list.push({--> | |
91 | + <!--value: `value${i}`,--> | |
92 | + <!--label: `label${i}`,--> | |
93 | + <!--});--> | |
94 | + <!--}--> | |
95 | + <!--this.list = list;--> | |
96 | + <!--},--> | |
97 | + <!--},--> | |
98 | +<!--};--> | |
85 | 99 | <!--</script>--> |
86 | 100 | |
87 | 101 | <!--<template>--> |
88 | -<!--<div style="width: 400px;margin: 50px;">--> | |
89 | -<!--<div>data: {{ model13 }}</div>--> | |
90 | -<!--<Row>--> | |
91 | -<!--<Col span="12" style="padding-right:10px">--> | |
92 | -<!--<Select--> | |
93 | -<!--size="small"--> | |
94 | -<!--placeholder="提示提示"--> | |
95 | -<!--v-model="model13"--> | |
96 | -<!--filterable--> | |
97 | -<!--remote--> | |
98 | -<!--transfer--> | |
99 | -<!--:remote-method="remoteMethod1"--> | |
100 | -<!--:loading="loading1">--> | |
101 | -<!--<Option v-for="(option, index) in options1" :value="option.value" :key="index">{{option.label}}</Option>--> | |
102 | -<!--</Select>--> | |
102 | + <!--<div style="width: 400px;margin: 50px;">--> | |
103 | + <!--<div>data: {{model13}}</div>--> | |
104 | + <!--<Row>--> | |
105 | + <!--<Col --> | |
106 | + <!--span="12" --> | |
107 | + <!--style="padding-right:10px">--> | |
108 | + <!--<Select--> | |
109 | + <!--v-model="model13"--> | |
110 | + <!--:remote-method="remoteMethod1"--> | |
111 | + <!--:loading="loading1"--> | |
112 | + <!--size="small"--> | |
113 | + <!--placeholder="提示提示"--> | |
114 | + <!--filterable--> | |
115 | + <!--remote--> | |
116 | + <!--transfer>--> | |
117 | + <!--<Option --> | |
118 | + <!--v-for="(option, index) in options1" --> | |
119 | + <!--:value="option.value" --> | |
120 | + <!--:key="index">{{option.label}}</Option>--> | |
121 | + <!--</Select>--> | |
103 | 122 | <!--</Col>--> |
104 | -<!--<Col span="12">--> | |
105 | -<!--<Select--> | |
106 | -<!--v-model="model14"--> | |
107 | -<!--multiple--> | |
108 | -<!--filterable--> | |
109 | -<!--remote--> | |
110 | -<!--:remote-method="remoteMethod2"--> | |
111 | -<!--:loading="loading2">--> | |
112 | -<!--<Option v-for="(option, index) in options2" :value="option.value" :key="index">{{option.label}}</Option>--> | |
113 | -<!--</Select>--> | |
123 | + <!--<Col span="12">--> | |
124 | + <!--<Select--> | |
125 | + <!--v-model="model14"--> | |
126 | + <!--:remote-method="remoteMethod2"--> | |
127 | + <!--:loading="loading2"--> | |
128 | + <!--multiple--> | |
129 | + <!--filterable--> | |
130 | + <!--remote>--> | |
131 | + <!--<Option --> | |
132 | + <!--v-for="(option, index) in options2" --> | |
133 | + <!--:value="option.value" --> | |
134 | + <!--:key="index">{{option.label}}</Option>--> | |
135 | + <!--</Select>--> | |
114 | 136 | <!--</Col>--> |
115 | -<!--</Row>--> | |
116 | -<!--</div>--> | |
137 | + <!--</Row>--> | |
138 | + <!--</div>--> | |
117 | 139 | <!--</template>--> |
118 | 140 | <!--<script>--> |
119 | 141 | <!--export default {--> |
120 | -<!--data () {--> | |
121 | -<!--return {--> | |
122 | -<!--model13: '',--> | |
123 | -<!--loading1: false,--> | |
124 | -<!--options1: [],--> | |
125 | -<!--model14: [],--> | |
126 | -<!--loading2: false,--> | |
127 | -<!--options2: [],--> | |
128 | -<!--list: ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New hampshire', 'New jersey', 'New mexico', 'New york', 'North carolina', 'North dakota', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode island', 'South carolina', 'South dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West virginia', 'Wisconsin', 'Wyoming']--> | |
129 | -<!--}--> | |
130 | -<!--},--> | |
131 | -<!--methods: {--> | |
132 | -<!--remoteMethod1 (query) {--> | |
133 | -<!--if (query !== '') {--> | |
134 | -<!--this.loading1 = true;--> | |
135 | -<!--setTimeout(() => {--> | |
136 | -<!--this.loading1 = false;--> | |
137 | -<!--const list = this.list.map(item => {--> | |
138 | -<!--return {--> | |
139 | -<!--value: item,--> | |
140 | -<!--label: item--> | |
141 | -<!--};--> | |
142 | -<!--});--> | |
143 | -<!--this.options1 = list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
144 | -<!--}, 200);--> | |
145 | -<!--} else {--> | |
146 | -<!--this.options1 = [];--> | |
147 | -<!--}--> | |
148 | -<!--},--> | |
149 | -<!--remoteMethod2 (query) {--> | |
150 | -<!--if (query !== '') {--> | |
151 | -<!--this.loading2 = true;--> | |
152 | -<!--setTimeout(() => {--> | |
153 | -<!--this.loading2 = false;--> | |
154 | -<!--const list = this.list.map(item => {--> | |
155 | -<!--return {--> | |
156 | -<!--value: item,--> | |
157 | -<!--label: item--> | |
142 | + <!--data() {--> | |
143 | + <!--return {--> | |
144 | + <!--model13: '',--> | |
145 | + <!--loading1: false,--> | |
146 | + <!--options1: [],--> | |
147 | + <!--model14: [],--> | |
148 | + <!--loading2: false,--> | |
149 | + <!--options2: [],--> | |
150 | + <!--list: [--> | |
151 | + <!--'Alabama',--> | |
152 | + <!--'Alaska',--> | |
153 | + <!--'Arizona',--> | |
154 | + <!--'Arkansas',--> | |
155 | + <!--'California',--> | |
156 | + <!--'Colorado',--> | |
157 | + <!--'Connecticut',--> | |
158 | + <!--'Delaware',--> | |
159 | + <!--'Florida',--> | |
160 | + <!--'Georgia',--> | |
161 | + <!--'Hawaii',--> | |
162 | + <!--'Idaho',--> | |
163 | + <!--'Illinois',--> | |
164 | + <!--'Indiana',--> | |
165 | + <!--'Iowa',--> | |
166 | + <!--'Kansas',--> | |
167 | + <!--'Kentucky',--> | |
168 | + <!--'Louisiana',--> | |
169 | + <!--'Maine',--> | |
170 | + <!--'Maryland',--> | |
171 | + <!--'Massachusetts',--> | |
172 | + <!--'Michigan',--> | |
173 | + <!--'Minnesota',--> | |
174 | + <!--'Mississippi',--> | |
175 | + <!--'Missouri',--> | |
176 | + <!--'Montana',--> | |
177 | + <!--'Nebraska',--> | |
178 | + <!--'Nevada',--> | |
179 | + <!--'New hampshire',--> | |
180 | + <!--'New jersey',--> | |
181 | + <!--'New mexico',--> | |
182 | + <!--'New york',--> | |
183 | + <!--'North carolina',--> | |
184 | + <!--'North dakota',--> | |
185 | + <!--'Ohio',--> | |
186 | + <!--'Oklahoma',--> | |
187 | + <!--'Oregon',--> | |
188 | + <!--'Pennsylvania',--> | |
189 | + <!--'Rhode island',--> | |
190 | + <!--'South carolina',--> | |
191 | + <!--'South dakota',--> | |
192 | + <!--'Tennessee',--> | |
193 | + <!--'Texas',--> | |
194 | + <!--'Utah',--> | |
195 | + <!--'Vermont',--> | |
196 | + <!--'Virginia',--> | |
197 | + <!--'Washington',--> | |
198 | + <!--'West virginia',--> | |
199 | + <!--'Wisconsin',--> | |
200 | + <!--'Wyoming',--> | |
201 | + <!--],--> | |
202 | + <!--};--> | |
203 | + <!--},--> | |
204 | + <!--methods: {--> | |
205 | + <!--remoteMethod1(query) {--> | |
206 | + <!--if (query !== '') {--> | |
207 | + <!--this.loading1 = true;--> | |
208 | + <!--setTimeout(() => {--> | |
209 | + <!--this.loading1 = false;--> | |
210 | + <!--const list = this.list.map((item) => ({--> | |
211 | + <!--value: item,--> | |
212 | + <!--label: item,--> | |
213 | + <!--}));--> | |
214 | + <!--this.options1 = list.filter((item) => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
215 | + <!--}, 200);--> | |
216 | + <!--} else {--> | |
217 | + <!--this.options1 = [];--> | |
218 | + <!--}--> | |
219 | + <!--},--> | |
220 | + <!--remoteMethod2(query) {--> | |
221 | + <!--if (query !== '') {--> | |
222 | + <!--this.loading2 = true;--> | |
223 | + <!--setTimeout(() => {--> | |
224 | + <!--this.loading2 = false;--> | |
225 | + <!--const list = this.list.map((item) => ({--> | |
226 | + <!--value: item,--> | |
227 | + <!--label: item,--> | |
228 | + <!--}));--> | |
229 | + <!--this.options2 = list.filter((item) => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
230 | + <!--}, 200);--> | |
231 | + <!--} else {--> | |
232 | + <!--this.options2 = [];--> | |
233 | + <!--}--> | |
234 | + <!--},--> | |
235 | + <!--},--> | |
158 | 236 | <!--};--> |
159 | -<!--});--> | |
160 | -<!--this.options2 = list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
161 | -<!--}, 200);--> | |
162 | -<!--} else {--> | |
163 | -<!--this.options2 = [];--> | |
164 | -<!--}--> | |
165 | -<!--}--> | |
166 | -<!--}--> | |
167 | -<!--}--> | |
168 | 237 | <!--</script>--> |
169 | 238 | |
170 | 239 | <!--<template>--> |
171 | -<!--<div style="width: 300px">--> | |
172 | -<!--<Select--> | |
173 | -<!--v-model="model14"--> | |
174 | -<!--multiple--> | |
175 | -<!--filterable--> | |
176 | -<!--remote--> | |
177 | -<!--:remote-method="remoteMethod2"--> | |
178 | -<!--:loading="loading2">--> | |
179 | -<!--<Option v-for="(option, index) in options2" :value="option.value" :key="index">{{option.label}}</Option>--> | |
180 | -<!--</Select>--> | |
181 | -<!--</div>--> | |
240 | + <!--<div style="width: 300px">--> | |
241 | + <!--<Select--> | |
242 | + <!--v-model="model14"--> | |
243 | + <!--:remote-method="remoteMethod2"--> | |
244 | + <!--:loading="loading2"--> | |
245 | + <!--multiple--> | |
246 | + <!--filterable--> | |
247 | + <!--remote>--> | |
248 | + <!--<Option --> | |
249 | + <!--v-for="(option, index) in options2" --> | |
250 | + <!--:value="option.value" --> | |
251 | + <!--:key="index">{{option.label}}</Option>--> | |
252 | + <!--</Select>--> | |
253 | + <!--</div>--> | |
182 | 254 | <!--</template>--> |
183 | 255 | <!--<script>--> |
184 | 256 | <!--export default {--> |
185 | -<!--data () {--> | |
186 | -<!--return {--> | |
187 | -<!--model13: '',--> | |
188 | -<!--loading1: false,--> | |
189 | -<!--options1: [],--> | |
190 | -<!--model14: [],--> | |
191 | -<!--loading2: false,--> | |
192 | -<!--options2: [],--> | |
193 | -<!--list: ['a', 'b', 'c']--> | |
194 | -<!--}--> | |
195 | -<!--},--> | |
196 | -<!--methods: {--> | |
197 | -<!--remoteMethod2 (query) {--> | |
198 | -<!--if (query !== '') {--> | |
199 | -<!--this.loading2 = true;--> | |
200 | -<!--setTimeout(() => {--> | |
201 | -<!--this.loading2 = false;--> | |
202 | -<!--const list = this.list.map(item => {--> | |
203 | -<!--return {--> | |
204 | -<!--value: item,--> | |
205 | -<!--label: item--> | |
257 | + <!--data() {--> | |
258 | + <!--return {--> | |
259 | + <!--model13: '',--> | |
260 | + <!--loading1: false,--> | |
261 | + <!--options1: [],--> | |
262 | + <!--model14: [],--> | |
263 | + <!--loading2: false,--> | |
264 | + <!--options2: [],--> | |
265 | + <!--list: ['a', 'b', 'c'],--> | |
266 | + <!--};--> | |
267 | + <!--},--> | |
268 | + <!--methods: {--> | |
269 | + <!--remoteMethod2(query) {--> | |
270 | + <!--if (query !== '') {--> | |
271 | + <!--this.loading2 = true;--> | |
272 | + <!--setTimeout(() => {--> | |
273 | + <!--this.loading2 = false;--> | |
274 | + <!--const list = this.list.map((item) => ({--> | |
275 | + <!--value: item,--> | |
276 | + <!--label: item,--> | |
277 | + <!--}));--> | |
278 | + <!--this.options2 = list.filter((item) => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
279 | + <!--}, 200);--> | |
280 | + <!--} else {--> | |
281 | + <!--this.options2 = [];--> | |
282 | + <!--}--> | |
283 | + <!--},--> | |
284 | + <!--},--> | |
206 | 285 | <!--};--> |
207 | -<!--});--> | |
208 | -<!--this.options2 = list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
209 | -<!--}, 200);--> | |
210 | -<!--} else {--> | |
211 | -<!--this.options2 = [];--> | |
212 | -<!--}--> | |
213 | -<!--}--> | |
214 | -<!--}--> | |
215 | -<!--}--> | |
216 | 286 | <!--</script>--> |
217 | 287 | |
218 | 288 | |
219 | 289 | <!--<template>--> |
220 | -<!--<Row>--> | |
221 | -<!--<Col span="12" style="padding-right:10px">--> | |
222 | -<!--<Select--> | |
223 | -<!--v-model="model13"--> | |
224 | -<!--filterable--> | |
225 | -<!--remote--> | |
226 | -<!--:remote-method="remoteMethod1"--> | |
227 | -<!--:loading="loading1">--> | |
228 | -<!--<Option v-for="(option, index) in options1" :value="option.value" :key="index">{{option.label}}</Option>--> | |
229 | -<!--</Select>--> | |
290 | + <!--<Row>--> | |
291 | + <!--<Col --> | |
292 | + <!--span="12" --> | |
293 | + <!--style="padding-right:10px">--> | |
294 | + <!--<Select--> | |
295 | + <!--v-model="model13"--> | |
296 | + <!--:remote-method="remoteMethod1"--> | |
297 | + <!--:loading="loading1"--> | |
298 | + <!--filterable--> | |
299 | + <!--remote>--> | |
300 | + <!--<Option --> | |
301 | + <!--v-for="(option, index) in options1" --> | |
302 | + <!--:value="option.value" --> | |
303 | + <!--:key="index">{{option.label}}</Option>--> | |
304 | + <!--</Select>--> | |
230 | 305 | <!--</Col>--> |
231 | -<!--<Col span="12">--> | |
232 | -<!--<Select--> | |
233 | -<!--v-model="model14"--> | |
234 | -<!--multiple--> | |
235 | -<!--filterable--> | |
236 | -<!--remote--> | |
237 | -<!--:remote-method="remoteMethod2"--> | |
238 | -<!--:loading="loading2">--> | |
239 | -<!--<Option v-for="(option, index) in options2" :value="option.value" :key="index">{{option.label}}</Option>--> | |
240 | -<!--</Select>--> | |
306 | + <!--<Col span="12">--> | |
307 | + <!--<Select--> | |
308 | + <!--v-model="model14"--> | |
309 | + <!--:remote-method="remoteMethod2"--> | |
310 | + <!--:loading="loading2"--> | |
311 | + <!--multiple--> | |
312 | + <!--filterable--> | |
313 | + <!--remote>--> | |
314 | + <!--<Option --> | |
315 | + <!--v-for="(option, index) in options2" --> | |
316 | + <!--:value="option.value" --> | |
317 | + <!--:key="index">{{option.label}}</Option>--> | |
318 | + <!--</Select>--> | |
241 | 319 | <!--</Col>--> |
242 | -<!--</Row>--> | |
320 | + <!--</Row>--> | |
243 | 321 | <!--</template>--> |
244 | 322 | <!--<script>--> |
245 | 323 | <!--export default {--> |
246 | -<!--data () {--> | |
247 | -<!--return {--> | |
248 | -<!--model13: '',--> | |
249 | -<!--loading1: false,--> | |
250 | -<!--options1: [],--> | |
251 | -<!--model14: [],--> | |
252 | -<!--loading2: false,--> | |
253 | -<!--options2: [],--> | |
254 | -<!--list: ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New hampshire', 'New jersey', 'New mexico', 'New york', 'North carolina', 'North dakota', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode island', 'South carolina', 'South dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West virginia', 'Wisconsin', 'Wyoming']--> | |
255 | -<!--}--> | |
256 | -<!--},--> | |
257 | -<!--methods: {--> | |
258 | -<!--remoteMethod1 (query) {--> | |
259 | -<!--if (query !== '') {--> | |
260 | -<!--this.loading1 = true;--> | |
261 | -<!--setTimeout(() => {--> | |
262 | -<!--this.loading1 = false;--> | |
263 | -<!--const list = this.list.map(item => {--> | |
264 | -<!--return {--> | |
265 | -<!--value: item,--> | |
266 | -<!--label: item--> | |
267 | -<!--};--> | |
268 | -<!--});--> | |
269 | -<!--this.options1 = list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
270 | -<!--}, 200);--> | |
271 | -<!--} else {--> | |
272 | -<!--this.options1 = [];--> | |
273 | -<!--}--> | |
274 | -<!--},--> | |
275 | -<!--remoteMethod2 (query) {--> | |
276 | -<!--if (query !== '') {--> | |
277 | -<!--this.loading2 = true;--> | |
278 | -<!--setTimeout(() => {--> | |
279 | -<!--this.loading2 = false;--> | |
280 | -<!--const list = this.list.map(item => {--> | |
281 | -<!--return {--> | |
282 | -<!--value: item,--> | |
283 | -<!--label: item--> | |
324 | + <!--data() {--> | |
325 | + <!--return {--> | |
326 | + <!--model13: '',--> | |
327 | + <!--loading1: false,--> | |
328 | + <!--options1: [],--> | |
329 | + <!--model14: [],--> | |
330 | + <!--loading2: false,--> | |
331 | + <!--options2: [],--> | |
332 | + <!--list: [--> | |
333 | + <!--'Alabama',--> | |
334 | + <!--'Alaska',--> | |
335 | + <!--'Arizona',--> | |
336 | + <!--'Arkansas',--> | |
337 | + <!--'California',--> | |
338 | + <!--'Colorado',--> | |
339 | + <!--'Connecticut',--> | |
340 | + <!--'Delaware',--> | |
341 | + <!--'Florida',--> | |
342 | + <!--'Georgia',--> | |
343 | + <!--'Hawaii',--> | |
344 | + <!--'Idaho',--> | |
345 | + <!--'Illinois',--> | |
346 | + <!--'Indiana',--> | |
347 | + <!--'Iowa',--> | |
348 | + <!--'Kansas',--> | |
349 | + <!--'Kentucky',--> | |
350 | + <!--'Louisiana',--> | |
351 | + <!--'Maine',--> | |
352 | + <!--'Maryland',--> | |
353 | + <!--'Massachusetts',--> | |
354 | + <!--'Michigan',--> | |
355 | + <!--'Minnesota',--> | |
356 | + <!--'Mississippi',--> | |
357 | + <!--'Missouri',--> | |
358 | + <!--'Montana',--> | |
359 | + <!--'Nebraska',--> | |
360 | + <!--'Nevada',--> | |
361 | + <!--'New hampshire',--> | |
362 | + <!--'New jersey',--> | |
363 | + <!--'New mexico',--> | |
364 | + <!--'New york',--> | |
365 | + <!--'North carolina',--> | |
366 | + <!--'North dakota',--> | |
367 | + <!--'Ohio',--> | |
368 | + <!--'Oklahoma',--> | |
369 | + <!--'Oregon',--> | |
370 | + <!--'Pennsylvania',--> | |
371 | + <!--'Rhode island',--> | |
372 | + <!--'South carolina',--> | |
373 | + <!--'South dakota',--> | |
374 | + <!--'Tennessee',--> | |
375 | + <!--'Texas',--> | |
376 | + <!--'Utah',--> | |
377 | + <!--'Vermont',--> | |
378 | + <!--'Virginia',--> | |
379 | + <!--'Washington',--> | |
380 | + <!--'West virginia',--> | |
381 | + <!--'Wisconsin',--> | |
382 | + <!--'Wyoming',--> | |
383 | + <!--],--> | |
384 | + <!--};--> | |
385 | + <!--},--> | |
386 | + <!--methods: {--> | |
387 | + <!--remoteMethod1(query) {--> | |
388 | + <!--if (query !== '') {--> | |
389 | + <!--this.loading1 = true;--> | |
390 | + <!--setTimeout(() => {--> | |
391 | + <!--this.loading1 = false;--> | |
392 | + <!--const list = this.list.map((item) => ({--> | |
393 | + <!--value: item,--> | |
394 | + <!--label: item,--> | |
395 | + <!--}));--> | |
396 | + <!--this.options1 = list.filter((item) => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
397 | + <!--}, 200);--> | |
398 | + <!--} else {--> | |
399 | + <!--this.options1 = [];--> | |
400 | + <!--}--> | |
401 | + <!--},--> | |
402 | + <!--remoteMethod2(query) {--> | |
403 | + <!--if (query !== '') {--> | |
404 | + <!--this.loading2 = true;--> | |
405 | + <!--setTimeout(() => {--> | |
406 | + <!--this.loading2 = false;--> | |
407 | + <!--const list = this.list.map((item) => ({--> | |
408 | + <!--value: item,--> | |
409 | + <!--label: item,--> | |
410 | + <!--}));--> | |
411 | + <!--this.options2 = list.filter((item) => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
412 | + <!--}, 200);--> | |
413 | + <!--} else {--> | |
414 | + <!--this.options2 = [];--> | |
415 | + <!--}--> | |
416 | + <!--},--> | |
417 | + <!--},--> | |
284 | 418 | <!--};--> |
285 | -<!--});--> | |
286 | -<!--this.options2 = list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);--> | |
287 | -<!--}, 200);--> | |
288 | -<!--} else {--> | |
289 | -<!--this.options2 = [];--> | |
290 | -<!--}--> | |
291 | -<!--}--> | |
292 | -<!--}--> | |
293 | -<!--}--> | |
294 | 419 | <!--</script>--> |
295 | 420 | |
296 | 421 | <!--<template>--> |
... | ... | @@ -356,7 +481,9 @@ |
356 | 481 | <!--style="width:200px"--> |
357 | 482 | <!-->--> |
358 | 483 | <!--<i-option value="beijing">New York</i-option>--> |
359 | - <!--<i-option value="shanghai" disabled>London</i-option>--> | |
484 | + <!--<i-option --> | |
485 | + <!--value="shanghai" --> | |
486 | + <!--disabled>London</i-option>--> | |
360 | 487 | <!--<i-option value="shenzhen">Sydney</i-option>--> |
361 | 488 | <!--</i-select>--> |
362 | 489 | <!--<br>--> |
... | ... | @@ -396,15 +523,21 @@ |
396 | 523 | <!--v-model="model9"--> |
397 | 524 | <!--style="width:200px"--> |
398 | 525 | <!-->--> |
399 | - <!--<i-option value="New York" label="New York">--> | |
526 | + <!--<i-option --> | |
527 | + <!--value="New York" --> | |
528 | + <!--label="New York">--> | |
400 | 529 | <!--<span>New York</span>--> |
401 | 530 | <!--<span style="float:right;color:#ccc">America</span>--> |
402 | 531 | <!--</i-option>--> |
403 | - <!--<i-option value="London" label="London">--> | |
532 | + <!--<i-option --> | |
533 | + <!--value="London" --> | |
534 | + <!--label="London">--> | |
404 | 535 | <!--<span>London</span>--> |
405 | 536 | <!--<span style="float:right;color:#ccc">U.K.</span>--> |
406 | 537 | <!--</i-option>--> |
407 | - <!--<i-option value="Sydney" label="Sydney">--> | |
538 | + <!--<i-option --> | |
539 | + <!--value="Sydney" --> | |
540 | + <!--label="Sydney">--> | |
408 | 541 | <!--<span>Sydney</span>--> |
409 | 542 | <!--<span style="float:right;color:#ccc">Australian</span>--> |
410 | 543 | <!--</i-option>--> |
... | ... | @@ -461,11 +594,11 @@ |
461 | 594 | <!-->--> |
462 | 595 | <!--<i-select--> |
463 | 596 | <!--v-model="model13"--> |
597 | + <!--:remote-method="remoteMethod1"--> | |
598 | + <!--:loading="loading1"--> | |
464 | 599 | <!--filterable--> |
465 | 600 | <!--remote--> |
466 | 601 | <!--clearable--> |
467 | - <!--:remote-method="remoteMethod1"--> | |
468 | - <!--:loading="loading1"--> | |
469 | 602 | <!-->--> |
470 | 603 | <!--<i-option--> |
471 | 604 | <!--v-for="(option, index) in options1"--> |
... | ... | @@ -477,12 +610,12 @@ |
477 | 610 | <!--<i-col span="12">--> |
478 | 611 | <!--<i-select--> |
479 | 612 | <!--v-model="model14"--> |
613 | + <!--:remote-method="remoteMethod2"--> | |
614 | + <!--:loading="loading2"--> | |
480 | 615 | <!--multiple--> |
481 | 616 | <!--filterable--> |
482 | 617 | <!--remote--> |
483 | - <!--clearable--> | |
484 | - <!--:remote-method="remoteMethod2"--> | |
485 | - <!--:loading="loading2">--> | |
618 | + <!--clearable>--> | |
486 | 619 | <!--<i-option--> |
487 | 620 | <!--v-for="(option, index) in options2"--> |
488 | 621 | <!--:value="option.value"--> |
... | ... | @@ -495,208 +628,251 @@ |
495 | 628 | <!--</template>--> |
496 | 629 | |
497 | 630 | <!--<script>--> |
498 | - <!--export default {--> | |
499 | - <!--data(){--> | |
500 | - <!--return {--> | |
501 | - <!--cityList: [--> | |
502 | - <!--{--> | |
503 | - <!--value: 'New York',--> | |
504 | - <!--label: 'New York',--> | |
505 | - <!--},--> | |
506 | - <!--{--> | |
507 | - <!--value: 'London',--> | |
508 | - <!--label: 'London',--> | |
509 | - <!--},--> | |
510 | - <!--{--> | |
511 | - <!--value: 'Sydney',--> | |
512 | - <!--label: 'Sydney',--> | |
513 | - <!--},--> | |
514 | - <!--{--> | |
515 | - <!--value: 'Ottawa',--> | |
516 | - <!--label: 'Ottawa',--> | |
517 | - <!--},--> | |
518 | - <!--{--> | |
519 | - <!--value: 'Paris',--> | |
520 | - <!--label: 'Paris',--> | |
521 | - <!--},--> | |
522 | - <!--{--> | |
523 | - <!--value: 'Canberra',--> | |
524 | - <!--label: 'Canberra',--> | |
525 | - <!--},--> | |
526 | - <!--],--> | |
527 | - <!--cityList1: [--> | |
528 | - <!--{--> | |
529 | - <!--value: 'New York',--> | |
530 | - <!--label: 'New York',--> | |
531 | - <!--},--> | |
532 | - <!--{--> | |
533 | - <!--value: 'London',--> | |
534 | - <!--label: 'London',--> | |
535 | - <!--},--> | |
536 | - <!--{--> | |
537 | - <!--value: 'Sydney',--> | |
538 | - <!--label: 'Sydney',--> | |
539 | - <!--},--> | |
540 | - <!--],--> | |
541 | - <!--cityList2: [--> | |
542 | - <!--{--> | |
543 | - <!--value: 'Ottawa',--> | |
544 | - <!--label: 'Ottawa',--> | |
545 | - <!--},--> | |
546 | - <!--{--> | |
547 | - <!--value: 'Paris',--> | |
548 | - <!--label: 'Paris',--> | |
549 | - <!--},--> | |
550 | - <!--{--> | |
551 | - <!--value: 'Canberra',--> | |
552 | - <!--label: 'Canberra',--> | |
553 | - <!--},--> | |
554 | - <!--],--> | |
555 | - <!--model1: '',--> | |
556 | - <!--model2: '',--> | |
557 | - <!--model3: '',--> | |
558 | - <!--model4: '',--> | |
559 | - <!--model5: '',--> | |
560 | - <!--model6: '',--> | |
561 | - <!--model7: '',--> | |
562 | - <!--model8: '',--> | |
563 | - <!--model9: '',--> | |
564 | - <!--model10: [],--> | |
565 | - <!--model11: '',--> | |
566 | - <!--model12: [],--> | |
567 | - <!--model13: '',--> | |
568 | - <!--loading1: false,--> | |
569 | - <!--options1: [],--> | |
570 | - <!--model14: [],--> | |
571 | - <!--loading2: false,--> | |
572 | - <!--options2: [],--> | |
573 | - <!--list: [--> | |
574 | - <!--'Alabama',--> | |
575 | - <!--'Alaska',--> | |
576 | - <!--'Arizona',--> | |
577 | - <!--'Arkansas',--> | |
578 | - <!--'California',--> | |
579 | - <!--'Colorado',--> | |
580 | - <!--'Connecticut',--> | |
581 | - <!--'Delaware',--> | |
582 | - <!--'Florida',--> | |
583 | - <!--'Georgia',--> | |
584 | - <!--'Hawaii',--> | |
585 | - <!--'Idaho',--> | |
586 | - <!--'Illinois',--> | |
587 | - <!--'Indiana',--> | |
588 | - <!--'Iowa',--> | |
589 | - <!--'Kansas',--> | |
590 | - <!--'Kentucky',--> | |
591 | - <!--'Louisiana',--> | |
592 | - <!--'Maine',--> | |
593 | - <!--'Maryland',--> | |
594 | - <!--'Massachusetts',--> | |
595 | - <!--'Michigan',--> | |
596 | - <!--'Minnesota',--> | |
597 | - <!--'Mississippi',--> | |
598 | - <!--'Missouri',--> | |
599 | - <!--'Montana',--> | |
600 | - <!--'Nebraska',--> | |
601 | - <!--'Nevada',--> | |
602 | - <!--'New hampshire',--> | |
603 | - <!--'New jersey',--> | |
604 | - <!--'New mexico',--> | |
605 | - <!--'New york',--> | |
606 | - <!--'North carolina',--> | |
607 | - <!--'North dakota',--> | |
608 | - <!--'Ohio',--> | |
609 | - <!--'Oklahoma',--> | |
610 | - <!--'Oregon',--> | |
611 | - <!--'Pennsylvania',--> | |
612 | - <!--'Rhode island',--> | |
613 | - <!--'South carolina',--> | |
614 | - <!--'South dakota',--> | |
615 | - <!--'Tennessee',--> | |
616 | - <!--'Texas',--> | |
617 | - <!--'Utah',--> | |
618 | - <!--'Vermont',--> | |
619 | - <!--'Virginia',--> | |
620 | - <!--'Washington',--> | |
621 | - <!--'West virginia',--> | |
622 | - <!--'Wisconsin',--> | |
623 | - <!--'Wyoming',--> | |
624 | - <!--],--> | |
625 | - <!--};--> | |
626 | - <!--},--> | |
631 | +<!--export default {--> | |
632 | + <!--data() {--> | |
633 | + <!--return {--> | |
634 | + <!--cityList: [--> | |
635 | + <!--{--> | |
636 | + <!--value: 'New York',--> | |
637 | + <!--label: 'New York',--> | |
638 | + <!--},--> | |
639 | + <!--{--> | |
640 | + <!--value: 'London',--> | |
641 | + <!--label: 'London',--> | |
642 | + <!--},--> | |
643 | + <!--{--> | |
644 | + <!--value: 'Sydney',--> | |
645 | + <!--label: 'Sydney',--> | |
646 | + <!--},--> | |
647 | + <!--{--> | |
648 | + <!--value: 'Ottawa',--> | |
649 | + <!--label: 'Ottawa',--> | |
650 | + <!--},--> | |
651 | + <!--{--> | |
652 | + <!--value: 'Paris',--> | |
653 | + <!--label: 'Paris',--> | |
654 | + <!--},--> | |
655 | + <!--{--> | |
656 | + <!--value: 'Canberra',--> | |
657 | + <!--label: 'Canberra',--> | |
658 | + <!--},--> | |
659 | + <!--],--> | |
660 | + <!--cityList1: [--> | |
661 | + <!--{--> | |
662 | + <!--value: 'New York',--> | |
663 | + <!--label: 'New York',--> | |
664 | + <!--},--> | |
665 | + <!--{--> | |
666 | + <!--value: 'London',--> | |
667 | + <!--label: 'London',--> | |
668 | + <!--},--> | |
669 | + <!--{--> | |
670 | + <!--value: 'Sydney',--> | |
671 | + <!--label: 'Sydney',--> | |
672 | + <!--},--> | |
673 | + <!--],--> | |
674 | + <!--cityList2: [--> | |
675 | + <!--{--> | |
676 | + <!--value: 'Ottawa',--> | |
677 | + <!--label: 'Ottawa',--> | |
678 | + <!--},--> | |
679 | + <!--{--> | |
680 | + <!--value: 'Paris',--> | |
681 | + <!--label: 'Paris',--> | |
682 | + <!--},--> | |
683 | + <!--{--> | |
684 | + <!--value: 'Canberra',--> | |
685 | + <!--label: 'Canberra',--> | |
686 | + <!--},--> | |
687 | + <!--],--> | |
688 | + <!--model1: '',--> | |
689 | + <!--model2: '',--> | |
690 | + <!--model3: '',--> | |
691 | + <!--model4: '',--> | |
692 | + <!--model5: '',--> | |
693 | + <!--model6: '',--> | |
694 | + <!--model7: '',--> | |
695 | + <!--model8: '',--> | |
696 | + <!--model9: '',--> | |
697 | + <!--model10: [],--> | |
698 | + <!--model11: '',--> | |
699 | + <!--model12: [],--> | |
700 | + <!--model13: '',--> | |
701 | + <!--loading1: false,--> | |
702 | + <!--options1: [],--> | |
703 | + <!--model14: [],--> | |
704 | + <!--loading2: false,--> | |
705 | + <!--options2: [],--> | |
706 | + <!--list: [--> | |
707 | + <!--'Alabama',--> | |
708 | + <!--'Alaska',--> | |
709 | + <!--'Arizona',--> | |
710 | + <!--'Arkansas',--> | |
711 | + <!--'California',--> | |
712 | + <!--'Colorado',--> | |
713 | + <!--'Connecticut',--> | |
714 | + <!--'Delaware',--> | |
715 | + <!--'Florida',--> | |
716 | + <!--'Georgia',--> | |
717 | + <!--'Hawaii',--> | |
718 | + <!--'Idaho',--> | |
719 | + <!--'Illinois',--> | |
720 | + <!--'Indiana',--> | |
721 | + <!--'Iowa',--> | |
722 | + <!--'Kansas',--> | |
723 | + <!--'Kentucky',--> | |
724 | + <!--'Louisiana',--> | |
725 | + <!--'Maine',--> | |
726 | + <!--'Maryland',--> | |
727 | + <!--'Massachusetts',--> | |
728 | + <!--'Michigan',--> | |
729 | + <!--'Minnesota',--> | |
730 | + <!--'Mississippi',--> | |
731 | + <!--'Missouri',--> | |
732 | + <!--'Montana',--> | |
733 | + <!--'Nebraska',--> | |
734 | + <!--'Nevada',--> | |
735 | + <!--'New hampshire',--> | |
736 | + <!--'New jersey',--> | |
737 | + <!--'New mexico',--> | |
738 | + <!--'New york',--> | |
739 | + <!--'North carolina',--> | |
740 | + <!--'North dakota',--> | |
741 | + <!--'Ohio',--> | |
742 | + <!--'Oklahoma',--> | |
743 | + <!--'Oregon',--> | |
744 | + <!--'Pennsylvania',--> | |
745 | + <!--'Rhode island',--> | |
746 | + <!--'South carolina',--> | |
747 | + <!--'South dakota',--> | |
748 | + <!--'Tennessee',--> | |
749 | + <!--'Texas',--> | |
750 | + <!--'Utah',--> | |
751 | + <!--'Vermont',--> | |
752 | + <!--'Virginia',--> | |
753 | + <!--'Washington',--> | |
754 | + <!--'West virginia',--> | |
755 | + <!--'Wisconsin',--> | |
756 | + <!--'Wyoming',--> | |
757 | + <!--],--> | |
758 | + <!--};--> | |
759 | + <!--},--> | |
627 | 760 | |
628 | - <!--methods: {--> | |
629 | - <!--remoteMethod1(query){--> | |
630 | - <!--if (query !== '') {--> | |
631 | - <!--this.loading1 = true;--> | |
761 | + <!--methods: {--> | |
762 | + <!--remoteMethod1(query) {--> | |
763 | + <!--if (query !== '') {--> | |
764 | + <!--this.loading1 = true;--> | |
632 | 765 | |
633 | - <!--setTimeout(() => {--> | |
634 | - <!--this.loading1 = false;--> | |
766 | + <!--setTimeout(() => {--> | |
767 | + <!--this.loading1 = false;--> | |
635 | 768 | |
636 | - <!--const list = this.list.map(item => ({--> | |
637 | - <!--value: item,--> | |
638 | - <!--label: item,--> | |
639 | - <!--}));--> | |
769 | + <!--const list = this.list.map((item) => ({--> | |
770 | + <!--value: item,--> | |
771 | + <!--label: item,--> | |
772 | + <!--}));--> | |
640 | 773 | |
641 | - <!--this.options1 = list--> | |
642 | - <!--.filter(item => item.label.toLowerCase().includes(query.toLowerCase()));--> | |
643 | - <!--}, 1500);--> | |
644 | - <!--} else {--> | |
645 | - <!--this.options1 = [];--> | |
646 | - <!--}--> | |
647 | - <!--},--> | |
648 | - <!--remoteMethod2(query){--> | |
649 | - <!--if (query !== '') {--> | |
650 | - <!--this.loading2 = true;--> | |
774 | + <!--this.options1 = list.filter((item) => item.label.toLowerCase().includes(query.toLowerCase()));--> | |
775 | + <!--}, 1500);--> | |
776 | + <!--} else {--> | |
777 | + <!--this.options1 = [];--> | |
778 | + <!--}--> | |
779 | + <!--},--> | |
780 | + <!--remoteMethod2(query) {--> | |
781 | + <!--if (query !== '') {--> | |
782 | + <!--this.loading2 = true;--> | |
651 | 783 | |
652 | - <!--setTimeout(() => {--> | |
653 | - <!--this.loading2 = false;--> | |
784 | + <!--setTimeout(() => {--> | |
785 | + <!--this.loading2 = false;--> | |
654 | 786 | |
655 | - <!--const list = this.list.map(item => ({--> | |
656 | - <!--value: item,--> | |
657 | - <!--label: item,--> | |
658 | - <!--}));--> | |
787 | + <!--const list = this.list.map((item) => ({--> | |
788 | + <!--value: item,--> | |
789 | + <!--label: item,--> | |
790 | + <!--}));--> | |
659 | 791 | |
660 | - <!--this.options2 = list--> | |
661 | - <!--.filter(item => item.label.toLowerCase().includes(query.toLowerCase()));--> | |
662 | - <!--}, 200);--> | |
663 | - <!--} else {--> | |
664 | - <!--this.options2 = [];--> | |
665 | - <!--}--> | |
666 | - <!--},--> | |
792 | + <!--this.options2 = list.filter((item) => item.label.toLowerCase().includes(query.toLowerCase()));--> | |
793 | + <!--}, 200);--> | |
794 | + <!--} else {--> | |
795 | + <!--this.options2 = [];--> | |
796 | + <!--}--> | |
667 | 797 | <!--},--> |
668 | - <!--};--> | |
798 | + <!--},--> | |
799 | +<!--};--> | |
669 | 800 | <!--</script>--> |
670 | 801 | |
671 | 802 | |
672 | 803 | <template> |
673 | 804 | <div> |
674 | - <Select v-model="model1" size="small" style="width:200px;" > | |
675 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
805 | + <Select | |
806 | + v-model="model1" | |
807 | + size="small" | |
808 | + style="width:200px;" > | |
809 | + <Option | |
810 | + v-for="item in cityList" | |
811 | + :value="item.value" | |
812 | + :key="item.value">{{item.label}}</Option> | |
676 | 813 | </Select> |
677 | - <Select v-model="model10" size="small" multiple style="width:260px" > | |
678 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
814 | + <Select | |
815 | + v-model="model10" | |
816 | + size="small" | |
817 | + multiple | |
818 | + style="width:260px" > | |
819 | + <Option | |
820 | + v-for="item in cityList" | |
821 | + :value="item.value" | |
822 | + :key="item.value">{{item.label}}</Option> | |
679 | 823 | </Select> |
680 | 824 | |
681 | 825 | <br><br> |
682 | 826 | |
683 | - <Select v-model="model1" size="large" style="width:200px" clearable @on-clear="onClear"> | |
684 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
827 | + <Select | |
828 | + v-model="model1" | |
829 | + size="large" | |
830 | + style="width:200px" | |
831 | + clearable | |
832 | + @on-clear="onClear"> | |
833 | + <Option | |
834 | + v-for="item in cityList" | |
835 | + :value="item.value" | |
836 | + :key="item.value">{{item.label}}</Option> | |
685 | 837 | </Select> |
686 | - <Select v-model="model10" size="large" multiple style="width:260px"> | |
687 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
838 | + <Select | |
839 | + v-model="model10" | |
840 | + size="large" | |
841 | + multiple | |
842 | + style="width:260px"> | |
843 | + <Option | |
844 | + v-for="item in cityList" | |
845 | + :value="item.value" | |
846 | + :key="item.value">{{item.label}}</Option> | |
688 | 847 | </Select> |
689 | 848 | |
690 | 849 | <br><br> |
691 | 850 | |
692 | - <Select v-model="model1" style="width:200px"> | |
693 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
851 | + <Select | |
852 | + v-model="model1" | |
853 | + style="width:200px"> | |
854 | + <Option | |
855 | + v-for="item in cityList" | |
856 | + :value="item.value" | |
857 | + :key="item.value">{{item.label}}</Option> | |
694 | 858 | </Select> |
695 | - <Select v-model="model11" multiple style="width:260px"> | |
696 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
859 | + <Select | |
860 | + v-model="model11" | |
861 | + multiple | |
862 | + style="width:260px"> | |
863 | + <Option | |
864 | + v-for="item in cityList" | |
865 | + :value="item.value" | |
866 | + :key="item.value">{{item.label}}</Option> | |
697 | 867 | </Select> |
698 | - <Select v-model="model10" multiple style="width:260px"> | |
699 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
868 | + <Select | |
869 | + v-model="model10" | |
870 | + multiple | |
871 | + style="width:260px"> | |
872 | + <Option | |
873 | + v-for="item in cityList" | |
874 | + :value="item.value" | |
875 | + :key="item.value">{{item.label}}</Option> | |
700 | 876 | </Select> |
701 | 877 | |
702 | 878 | <br><br> |
... | ... | @@ -709,8 +885,14 @@ |
709 | 885 | <br><br> |
710 | 886 | <br><br> |
711 | 887 | <br><br> |
712 | - <Select v-model="model10" multiple style="width:260px"> | |
713 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
888 | + <Select | |
889 | + v-model="model10" | |
890 | + multiple | |
891 | + style="width:260px"> | |
892 | + <Option | |
893 | + v-for="item in cityList" | |
894 | + :value="item.value" | |
895 | + :key="item.value">{{item.label}}</Option> | |
714 | 896 | </Select> |
715 | 897 | <br><br> |
716 | 898 | |
... | ... | @@ -722,50 +904,56 @@ |
722 | 904 | <br><br> |
723 | 905 | <br><br> |
724 | 906 | <br><br> |
725 | - <Select v-model="model10" multiple style="width:260px"> | |
726 | - <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> | |
907 | + <Select | |
908 | + v-model="model10" | |
909 | + multiple | |
910 | + style="width:260px"> | |
911 | + <Option | |
912 | + v-for="item in cityList" | |
913 | + :value="item.value" | |
914 | + :key="item.value">{{item.label}}</Option> | |
727 | 915 | </Select> |
728 | 916 | </div> |
729 | 917 | </template> |
730 | 918 | <script> |
731 | - export default { | |
732 | - data () { | |
733 | - return { | |
734 | - cityList: [ | |
735 | - { | |
736 | - value: 'New York', | |
737 | - label: 'New York' | |
738 | - }, | |
739 | - { | |
740 | - value: '中国', | |
741 | - label: '中国' | |
742 | - }, | |
743 | - { | |
744 | - value: 'Sydney', | |
745 | - label: 'Sydney' | |
746 | - }, | |
747 | - { | |
748 | - value: 'Ottawa', | |
749 | - label: 'Ottawa' | |
750 | - }, | |
751 | - { | |
752 | - value: 'Paris', | |
753 | - label: 'Paris' | |
754 | - }, | |
755 | - { | |
756 | - value: 'Canberra', | |
757 | - label: 'Canberra' | |
758 | - } | |
759 | - ], | |
760 | - model1: '', | |
761 | - model10: [], | |
762 | - model11: [] | |
763 | - } | |
919 | +export default { | |
920 | + data() { | |
921 | + return { | |
922 | + cityList: [ | |
923 | + { | |
924 | + value: 'New York', | |
925 | + label: 'New York', | |
926 | + }, | |
927 | + { | |
928 | + value: '中国', | |
929 | + label: '中国', | |
930 | + }, | |
931 | + { | |
932 | + value: 'Sydney', | |
933 | + label: 'Sydney', | |
934 | + }, | |
935 | + { | |
936 | + value: 'Ottawa', | |
937 | + label: 'Ottawa', | |
938 | + }, | |
939 | + { | |
940 | + value: 'Paris', | |
941 | + label: 'Paris', | |
942 | + }, | |
943 | + { | |
944 | + value: 'Canberra', | |
945 | + label: 'Canberra', | |
946 | + }, | |
947 | + ], | |
948 | + model1: '', | |
949 | + model10: [], | |
950 | + model11: [], | |
951 | + }; | |
952 | + }, | |
953 | + methods: { | |
954 | + onClear() { | |
955 | + console.log('onClear'); | |
764 | 956 | }, |
765 | - methods: { | |
766 | - onClear(){ | |
767 | - console.log('onClear'); | |
768 | - } | |
769 | - } | |
770 | - } | |
957 | + }, | |
958 | +}; | |
771 | 959 | </script> | ... | ... |
src/components/select/select.vue
... | ... | @@ -2,6 +2,7 @@ |
2 | 2 | <div |
3 | 3 | :class="classes" |
4 | 4 | v-click-outside.capture="onClickOutside" |
5 | + v-click-outside:mousedown.capture="onClickOutside" | |
5 | 6 | > |
6 | 7 | <div |
7 | 8 | ref="reference" |
... | ... | @@ -465,6 +466,10 @@ |
465 | 466 | }, |
466 | 467 | onClickOutside(event){ |
467 | 468 | if (this.visible) { |
469 | + if (event.type === 'mousedown') { | |
470 | + event.preventDefault(); | |
471 | + return; | |
472 | + } | |
468 | 473 | |
469 | 474 | if (this.filterable) { |
470 | 475 | const input = this.$el.querySelector('input[type="text"]'); | ... | ... |