Commit 1b639c0a19ddb31c114f2fb3131727d14ac554a7
Committed by
GitHub
Merge pull request #3048 from Xotic750/add_select_examples
Add select examples from the docs for rework of the select component
Showing
1 changed file
with
618 additions
and
245 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 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>--> | |
12 | 12 | <!--</template>--> |
13 | 13 | <!--<script>--> |
14 | - <!--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 | - <!--}--> | |
14 | +<!--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 | +<!--}--> | |
54 | 54 | <!--</script>--> |
55 | 55 | |
56 | 56 | <!--<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>--> | |
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>--> | |
63 | 63 | <!--</template>--> |
64 | 64 | <!--<script>--> |
65 | - <!--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 | - <!--}--> | |
65 | +<!--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 | +<!--}--> | |
85 | 85 | <!--</script>--> |
86 | 86 | |
87 | 87 | <!--<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>--> | |
103 | - <!--</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>--> | |
114 | - <!--</Col>--> | |
115 | - <!--</Row>--> | |
116 | - <!--</div>--> | |
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>--> | |
103 | +<!--</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>--> | |
114 | +<!--</Col>--> | |
115 | +<!--</Row>--> | |
116 | +<!--</div>--> | |
117 | 117 | <!--</template>--> |
118 | 118 | <!--<script>--> |
119 | - <!--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--> | |
158 | - <!--};--> | |
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 | - <!--}--> | |
119 | +<!--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--> | |
158 | +<!--};--> | |
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 | 168 | <!--</script>--> |
169 | 169 | |
170 | 170 | <!--<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>--> | |
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>--> | |
182 | 182 | <!--</template>--> |
183 | 183 | <!--<script>--> |
184 | - <!--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--> | |
206 | - <!--};--> | |
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 | - <!--}--> | |
184 | +<!--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--> | |
206 | +<!--};--> | |
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 | 216 | <!--</script>--> |
217 | 217 | |
218 | 218 | |
219 | +<!--<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>--> | |
230 | +<!--</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>--> | |
241 | +<!--</Col>--> | |
242 | +<!--</Row>--> | |
243 | +<!--</template>--> | |
244 | +<!--<script>--> | |
245 | +<!--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--> | |
284 | +<!--};--> | |
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 | +<!--</script>--> | |
295 | + | |
219 | 296 | <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> | |
230 | - </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> | |
241 | - </Col> | |
242 | - </Row> | |
297 | + <div id="app"> | |
298 | + <input><br> | |
299 | + <i-select | |
300 | + v-model="model1" | |
301 | + style="width:200px" | |
302 | + > | |
303 | + <i-option | |
304 | + v-for="item in cityList" | |
305 | + :value="item.value" | |
306 | + :key="item.value" | |
307 | + >{{item.label}}</i-option> | |
308 | + </i-select> | |
309 | + <br> | |
310 | + <i-select | |
311 | + v-model="model2" | |
312 | + size="small" | |
313 | + style="width:100px" | |
314 | + > | |
315 | + <i-option | |
316 | + v-for="item in cityList" | |
317 | + :value="item.value" | |
318 | + :key="item.value" | |
319 | + >{{item.label}}</i-option> | |
320 | + </i-select> | |
321 | + <i-select | |
322 | + v-model="model3" | |
323 | + style="width:100px" | |
324 | + > | |
325 | + <i-option | |
326 | + v-for="item in cityList" | |
327 | + :value="item.value" | |
328 | + :key="item.value" | |
329 | + >{{item.label}}</i-option> | |
330 | + </i-select> | |
331 | + <i-select | |
332 | + v-model="model4" | |
333 | + size="large" | |
334 | + style="width:100px" | |
335 | + > | |
336 | + <i-option | |
337 | + v-for="item in cityList" | |
338 | + :value="item.value" | |
339 | + :key="item.value" | |
340 | + >{{item.label}}</i-option> | |
341 | + </i-select> | |
342 | + <br> | |
343 | + <i-select | |
344 | + v-model="model5" | |
345 | + disabled | |
346 | + style="width:200px" | |
347 | + > | |
348 | + <i-option | |
349 | + v-for="item in cityList" | |
350 | + :value="item.value" | |
351 | + :key="item.value" | |
352 | + >{{item.label}}</i-option> | |
353 | + </i-select> | |
354 | + <i-select | |
355 | + v-model="model6" | |
356 | + style="width:200px" | |
357 | + > | |
358 | + <i-option value="beijing">New York</i-option> | |
359 | + <i-option value="shanghai" disabled>London</i-option> | |
360 | + <i-option value="shenzhen">Sydney</i-option> | |
361 | + </i-select> | |
362 | + <br> | |
363 | + <i-select | |
364 | + v-model="model8" | |
365 | + clearable | |
366 | + style="width:200px" | |
367 | + > | |
368 | + <i-option | |
369 | + v-for="item in cityList" | |
370 | + :value="item.value" | |
371 | + :key="item.value" | |
372 | + >{{item.label}}</i-option> | |
373 | + </i-select> | |
374 | + <br> | |
375 | + <i-select | |
376 | + v-model="model7" | |
377 | + style="width:200px" | |
378 | + > | |
379 | + <option-group label="Hot Cities"> | |
380 | + <i-option | |
381 | + v-for="item in cityList1" | |
382 | + :value="item.value" | |
383 | + :key="item.value" | |
384 | + >{{item.label}}</i-option> | |
385 | + </option-group> | |
386 | + <option-group label="Other Cities"> | |
387 | + <i-option | |
388 | + v-for="item in cityList2" | |
389 | + :value="item.value" | |
390 | + :key="item.value" | |
391 | + >{{item.label}}</i-option> | |
392 | + </option-group> | |
393 | + </i-select> | |
394 | + <br> | |
395 | + <i-select | |
396 | + v-model="model9" | |
397 | + style="width:200px" | |
398 | + > | |
399 | + <i-option value="New York" label="New York"> | |
400 | + <span>New York</span> | |
401 | + <span style="float:right;color:#ccc">America</span> | |
402 | + </i-option> | |
403 | + <i-option value="London" label="London"> | |
404 | + <span>London</span> | |
405 | + <span style="float:right;color:#ccc">U.K.</span> | |
406 | + </i-option> | |
407 | + <i-option value="Sydney" label="Sydney"> | |
408 | + <span>Sydney</span> | |
409 | + <span style="float:right;color:#ccc">Australian</span> | |
410 | + </i-option> | |
411 | + </i-select> | |
412 | + <br> | |
413 | + <div>here</div> | |
414 | + <i-select | |
415 | + v-model="model10" | |
416 | + multiple | |
417 | + style="width:260px" | |
418 | + > | |
419 | + <i-option | |
420 | + v-for="item in cityList" | |
421 | + :value="item.value" | |
422 | + :key="item.value" | |
423 | + >{{item.label}}</i-option> | |
424 | + </i-select> | |
425 | + <br> | |
426 | + <row> | |
427 | + <i-col | |
428 | + span="12" | |
429 | + style="padding-right:10px" | |
430 | + > | |
431 | + <i-select | |
432 | + v-model="model11" | |
433 | + filterable | |
434 | + > | |
435 | + <i-option | |
436 | + v-for="item in cityList" | |
437 | + :value="item.value" | |
438 | + :key="item.value" | |
439 | + >{{item.label}}</i-option> | |
440 | + </i-select> | |
441 | + </i-col> | |
442 | + <i-col span="12"> | |
443 | + <i-select | |
444 | + v-model="model12" | |
445 | + filterable | |
446 | + multiple | |
447 | + > | |
448 | + <i-option | |
449 | + v-for="item in cityList" | |
450 | + :value="item.value" | |
451 | + :key="item.value" | |
452 | + >{{item.label}}</i-option> | |
453 | + </i-select> | |
454 | + </i-col> | |
455 | + </row> | |
456 | + <br> | |
457 | + <row> | |
458 | + <i-col | |
459 | + span="12" | |
460 | + style="padding-right:10px" | |
461 | + > | |
462 | + <i-select | |
463 | + v-model="model13" | |
464 | + filterable | |
465 | + remote | |
466 | + clearable | |
467 | + :remote-method="remoteMethod1" | |
468 | + :loading="loading1" | |
469 | + > | |
470 | + <i-option | |
471 | + v-for="(option, index) in options1" | |
472 | + :value="option.value" | |
473 | + :key="index" | |
474 | + >{{option.label}}</i-option> | |
475 | + </i-select> | |
476 | + </i-col> | |
477 | + <i-col span="12"> | |
478 | + <i-select | |
479 | + v-model="model14" | |
480 | + multiple | |
481 | + filterable | |
482 | + remote | |
483 | + clearable | |
484 | + :remote-method="remoteMethod2" | |
485 | + :loading="loading2"> | |
486 | + <i-option | |
487 | + v-for="(option, index) in options2" | |
488 | + :value="option.value" | |
489 | + :key="index" | |
490 | + >{{option.label}}</i-option> | |
491 | + </i-select> | |
492 | + </i-col> | |
493 | + </row> | |
494 | + </div> | |
243 | 495 | </template> |
496 | + | |
244 | 497 | <script> |
245 | 498 | export default { |
246 | - data () { | |
499 | + data(){ | |
247 | 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: [], | |
248 | 567 | model13: '', |
249 | 568 | loading1: false, |
250 | 569 | options1: [], |
251 | 570 | model14: [], |
252 | 571 | loading2: false, |
253 | 572 | 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 | - } | |
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 | + }; | |
256 | 626 | }, |
627 | + | |
257 | 628 | methods: { |
258 | - remoteMethod1 (query) { | |
629 | + remoteMethod1(query){ | |
259 | 630 | if (query !== '') { |
260 | 631 | this.loading1 = true; |
632 | + | |
261 | 633 | setTimeout(() => { |
262 | 634 | 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); | |
635 | + | |
636 | + const list = this.list.map(item => ({ | |
637 | + value: item, | |
638 | + label: item, | |
639 | + })); | |
640 | + | |
641 | + this.options1 = list | |
642 | + .filter(item => item.label.toLowerCase().includes(query.toLowerCase())); | |
643 | + }, 1500); | |
271 | 644 | } else { |
272 | 645 | this.options1 = []; |
273 | 646 | } |
274 | 647 | }, |
275 | - remoteMethod2 (query) { | |
648 | + remoteMethod2(query){ | |
276 | 649 | if (query !== '') { |
277 | 650 | this.loading2 = true; |
651 | + | |
278 | 652 | setTimeout(() => { |
279 | 653 | this.loading2 = false; |
280 | - const list = this.list.map(item => { | |
281 | - return { | |
282 | - value: item, | |
283 | - label: item | |
284 | - }; | |
285 | - }); | |
286 | - this.options2 = list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1); | |
654 | + | |
655 | + const list = this.list.map(item => ({ | |
656 | + value: item, | |
657 | + label: item, | |
658 | + })); | |
659 | + | |
660 | + this.options2 = list | |
661 | + .filter(item => item.label.toLowerCase().includes(query.toLowerCase())); | |
287 | 662 | }, 200); |
288 | 663 | } else { |
289 | 664 | this.options2 = []; |
290 | 665 | } |
291 | - } | |
292 | - } | |
293 | - } | |
666 | + }, | |
667 | + }, | |
668 | + }; | |
294 | 669 | </script> |
295 | - | |
296 | - | ... | ... |