2016-07-27 06:15:02 +00:00
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
2016-08-20 07:00:01 +00:00
|
|
|
|
list: null,
|
2016-07-27 06:15:02 +00:00
|
|
|
|
options: [{
|
|
|
|
|
value: '选项1',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '黄金糕'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项2',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '双皮奶'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项3',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '蚵仔煎'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项4',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '龙须面'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项5',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '北京烤鸭'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
|
|
|
|
options2: [{
|
|
|
|
|
value: '选项1',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '黄金糕'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项2',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '双皮奶',
|
2016-07-27 06:15:02 +00:00
|
|
|
|
disabled: true
|
|
|
|
|
}, {
|
|
|
|
|
value: '选项3',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '蚵仔煎'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项4',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '龙须面'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项5',
|
2016-08-15 08:10:12 +00:00
|
|
|
|
label: '北京烤鸭'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
|
|
|
|
options3: [{
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '热门城市',
|
2016-07-27 06:15:02 +00:00
|
|
|
|
options: [{
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value: 'Shanghai',
|
|
|
|
|
label: '上海'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value: 'Beijing',
|
|
|
|
|
label: '北京'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}]
|
|
|
|
|
}, {
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '城市名',
|
2016-07-27 06:15:02 +00:00
|
|
|
|
options: [{
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value: 'Chengdu',
|
|
|
|
|
label: '成都'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value: 'Shenzhen',
|
|
|
|
|
label: '深圳'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value: 'Guangzhou',
|
|
|
|
|
label: '广州'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Dalian',
|
|
|
|
|
label: '大连'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}]
|
|
|
|
|
}],
|
2016-08-22 06:07:53 +00:00
|
|
|
|
options4: [],
|
2016-08-15 08:10:12 +00:00
|
|
|
|
cities: [{
|
|
|
|
|
value: 'Beijing',
|
|
|
|
|
label: '北京'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Shanghai',
|
|
|
|
|
label: '上海'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Nanjing',
|
|
|
|
|
label: '南京'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Chengdu',
|
|
|
|
|
label: '成都'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Shenzhen',
|
|
|
|
|
label: '深圳'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Guangzhou',
|
|
|
|
|
label: '广州'
|
|
|
|
|
}],
|
2016-07-27 06:15:02 +00:00
|
|
|
|
value: '',
|
|
|
|
|
value2: '',
|
|
|
|
|
value3: '',
|
|
|
|
|
value4: '',
|
|
|
|
|
value5: '',
|
|
|
|
|
value6: '',
|
|
|
|
|
value7: [],
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value8: [],
|
2016-07-27 06:15:02 +00:00
|
|
|
|
loading: false,
|
|
|
|
|
states: ["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"]
|
|
|
|
|
};
|
|
|
|
|
},
|
2016-08-20 07:00:01 +00:00
|
|
|
|
|
|
|
|
|
mounted() {
|
|
|
|
|
this.list = this.states.map(item => { return { value: item, label: item }; });
|
|
|
|
|
},
|
2016-07-27 06:15:02 +00:00
|
|
|
|
|
|
|
|
|
methods: {
|
|
|
|
|
remoteMethod(query) {
|
|
|
|
|
if (query !== '') {
|
|
|
|
|
this.loading = true;
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
this.loading = false;
|
2016-08-22 06:07:53 +00:00
|
|
|
|
this.options4 = this.list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, 200);
|
2016-08-20 07:00:01 +00:00
|
|
|
|
} else {
|
2016-08-22 06:07:53 +00:00
|
|
|
|
this.options4 = [];
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
## 基本用法
|
|
|
|
|
|
2016-07-28 10:37:14 +00:00
|
|
|
|
<el-select v-model="value">
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option v-for="item in options" :label="item.label" :value="item.value"></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<template>
|
2016-07-28 10:37:14 +00:00
|
|
|
|
<el-select v-model="value">
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in options"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
options: [{
|
|
|
|
|
value: '选项1',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '黄金糕'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项2',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '双皮奶'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项3',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '蚵仔煎'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项4',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '龙须面'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项5',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '北京烤鸭'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
|
|
|
|
value: ''
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## 有禁用选项
|
|
|
|
|
|
2016-08-22 06:07:53 +00:00
|
|
|
|
<el-select v-model="value2">
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option v-for="item in options2" :label="item.label" :value="item.value" :disabled="item.disabled"></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<template>
|
2016-08-22 06:07:53 +00:00
|
|
|
|
<el-select v-model="value2">
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in options2"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value"
|
|
|
|
|
:disabled="item.disabled">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
options2: [{
|
|
|
|
|
value: '选项1',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '黄金糕'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项2',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '双皮奶',
|
2016-07-27 06:15:02 +00:00
|
|
|
|
disabled: true
|
|
|
|
|
}, {
|
|
|
|
|
value: '选项3',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '蚵仔煎'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项4',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '龙须面'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项5',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '北京烤鸭'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value2: ''
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## 可清空单选
|
|
|
|
|
|
2016-08-22 06:07:53 +00:00
|
|
|
|
<el-select v-model="value3" clearable>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option v-for="item in options" :label="item.label" :value="item.value"></el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<template>
|
2016-08-22 06:07:53 +00:00
|
|
|
|
<el-select v-model="value3" clearable>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in options"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
options: [{
|
|
|
|
|
value: '选项1',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '黄金糕'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项2',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '双皮奶'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项3',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '蚵仔煎'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项4',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '龙须面'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项5',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '北京烤鸭'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value3: ''
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
```
|
|
|
|
|
|
2016-08-22 06:07:53 +00:00
|
|
|
|
## 可搜索
|
2016-07-27 06:15:02 +00:00
|
|
|
|
|
2016-08-22 06:07:53 +00:00
|
|
|
|
<el-select v-model="value4" filterable>
|
|
|
|
|
<el-option v-for="item in options" :label="item.label" :value="item.value"></el-option>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<template>
|
2016-08-22 06:07:53 +00:00
|
|
|
|
<el-select v-model="value4" filterable>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in options"
|
|
|
|
|
:label="item.label"
|
2016-08-22 06:07:53 +00:00
|
|
|
|
:value="item.value">
|
2016-07-27 06:15:02 +00:00
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
options: [{
|
|
|
|
|
value: '选项1',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '黄金糕'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项2',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '双皮奶'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项3',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '蚵仔煎'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项4',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '龙须面'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项5',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '北京烤鸭'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value4: ''
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
```
|
|
|
|
|
|
2016-08-22 06:07:53 +00:00
|
|
|
|
## 分组
|
|
|
|
|
|
|
|
|
|
<el-select v-model="value5">
|
|
|
|
|
<el-option-group v-for="group in options3" :label="group.label">
|
|
|
|
|
<el-option v-for="item in group.options" :label="item.label" :value="item.value">
|
|
|
|
|
<span style="float: left">{{ item.label }}</span>
|
|
|
|
|
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.value }}</span>
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-option-group>
|
|
|
|
|
</el-select>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<template>
|
2016-07-28 10:37:14 +00:00
|
|
|
|
<el-select v-model="value5">
|
2016-08-22 06:07:53 +00:00
|
|
|
|
<el-option-group v-for="group in options3" :label="group.label">
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in group.options"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-option-group>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
</el-select>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
2016-08-22 06:07:53 +00:00
|
|
|
|
options3: [{
|
|
|
|
|
label: '热门城市',
|
|
|
|
|
options: [{
|
|
|
|
|
value: 'Shanghai',
|
|
|
|
|
label: '上海'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Beijing',
|
|
|
|
|
label: '北京'
|
|
|
|
|
}]
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '城市名',
|
|
|
|
|
options: [{
|
|
|
|
|
value: 'Chengdu',
|
|
|
|
|
label: '成都'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Shenzhen',
|
|
|
|
|
label: '深圳'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Guangzhou',
|
|
|
|
|
label: '广州'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Dalian',
|
|
|
|
|
label: '大连'
|
|
|
|
|
}]
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
2016-08-22 06:07:53 +00:00
|
|
|
|
value9: ''
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## 自定义模板
|
|
|
|
|
|
2016-07-28 10:37:14 +00:00
|
|
|
|
<el-select v-model="value6">
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option
|
2016-08-15 08:10:12 +00:00
|
|
|
|
v-for="item in cities"
|
2016-07-27 06:15:02 +00:00
|
|
|
|
:label="item.label"
|
2016-07-28 10:37:14 +00:00
|
|
|
|
:value="item.value">
|
2016-08-15 08:10:12 +00:00
|
|
|
|
<span style="float: left">{{ item.label }}</span>
|
|
|
|
|
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.value }}</span>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<template>
|
2016-07-28 10:37:14 +00:00
|
|
|
|
<el-select v-model="value6">
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option
|
2016-08-15 08:10:12 +00:00
|
|
|
|
v-for="item in cities"
|
2016-07-27 06:15:02 +00:00
|
|
|
|
:label="item.label"
|
2016-07-28 10:37:14 +00:00
|
|
|
|
:value="item.value">
|
2016-08-15 08:10:12 +00:00
|
|
|
|
<span style="float: left">{{ item.label }}</span>
|
|
|
|
|
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.value }}</span>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
2016-08-15 08:10:12 +00:00
|
|
|
|
cities: [{
|
|
|
|
|
value: 'Beijing',
|
|
|
|
|
label: '北京'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
2016-08-15 08:10:12 +00:00
|
|
|
|
value: 'Shanghai',
|
|
|
|
|
label: '上海'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
2016-08-15 08:10:12 +00:00
|
|
|
|
value: 'Nanjing',
|
|
|
|
|
label: '南京'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
2016-08-15 08:10:12 +00:00
|
|
|
|
value: 'Chengdu',
|
|
|
|
|
label: '成都'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
2016-08-15 08:10:12 +00:00
|
|
|
|
value: 'Shenzhen',
|
|
|
|
|
label: '深圳'
|
|
|
|
|
}, {
|
|
|
|
|
value: 'Guangzhou',
|
|
|
|
|
label: '广州'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
|
|
|
|
value6: ''
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
```
|
|
|
|
|
|
2016-08-22 06:07:53 +00:00
|
|
|
|
## 基础多选
|
2016-07-27 06:15:02 +00:00
|
|
|
|
|
2016-07-28 10:37:14 +00:00
|
|
|
|
<el-select v-model="value7" multiple>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in options"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<template>
|
2016-07-28 10:37:14 +00:00
|
|
|
|
<el-select v-model="value7" multiple>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in options"
|
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
options: [{
|
|
|
|
|
value: '选项1',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '黄金糕'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项2',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '双皮奶'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项3',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '蚵仔煎'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项4',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '龙须面'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, {
|
|
|
|
|
value: '选项5',
|
2016-08-22 06:07:53 +00:00
|
|
|
|
label: '北京烤鸭'
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}],
|
|
|
|
|
value7: []
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## 服务端搜索
|
|
|
|
|
|
2016-08-22 06:07:53 +00:00
|
|
|
|
<el-select v-model="value8" multiple filterable remote :remote-method="remoteMethod" :loading="loading" placeholder="请输入关键词">
|
|
|
|
|
<el-option v-for="item in options4" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
2016-07-27 06:15:02 +00:00
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
|
|
```html
|
|
|
|
|
<template>
|
|
|
|
|
<el-select
|
2016-08-22 06:07:53 +00:00
|
|
|
|
v-model="value8"
|
2016-07-27 06:15:02 +00:00
|
|
|
|
multiple
|
|
|
|
|
filterable
|
|
|
|
|
remote
|
2016-08-20 07:00:01 +00:00
|
|
|
|
placeholder="请输入关键词"
|
2016-07-27 06:15:02 +00:00
|
|
|
|
:remote-method="remoteMethod"
|
|
|
|
|
:loading="loading">
|
|
|
|
|
<el-option
|
2016-08-22 06:07:53 +00:00
|
|
|
|
v-for="item in options4"
|
2016-08-20 07:00:01 +00:00
|
|
|
|
:key="item.value"
|
2016-07-27 06:15:02 +00:00
|
|
|
|
:label="item.label"
|
|
|
|
|
:value="item.value">
|
|
|
|
|
</el-option>
|
|
|
|
|
</el-select>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
export default {
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
2016-08-22 06:07:53 +00:00
|
|
|
|
options4: [],
|
|
|
|
|
value8: [],
|
|
|
|
|
list: [],
|
2016-07-27 06:15:02 +00:00
|
|
|
|
loading: false,
|
|
|
|
|
states: ["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"]
|
|
|
|
|
}
|
|
|
|
|
},
|
2016-08-22 06:07:53 +00:00
|
|
|
|
mounted() {
|
|
|
|
|
this.list = this.states.map(item => { return { value: item, label: item }; });
|
|
|
|
|
},
|
2016-07-27 06:15:02 +00:00
|
|
|
|
methods: {
|
|
|
|
|
remoteMethod(query) {
|
|
|
|
|
if (query !== '') {
|
|
|
|
|
this.loading = true;
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
this.loading = false;
|
2016-08-22 06:07:53 +00:00
|
|
|
|
this.options4 = this.list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}, 200);
|
2016-08-22 06:07:53 +00:00
|
|
|
|
} else {
|
|
|
|
|
this.options4 = [];
|
2016-07-27 06:15:02 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## API
|
|
|
|
|
### el-select
|
|
|
|
|
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
|
|
|
|
|---------- |-------------- |---------- |-------------------------------- |-------- |
|
|
|
|
|
| value | select 目前选中的值 | string/number/array | | |
|
|
|
|
|
| multiple | 是否多选 | boolean | | false |
|
|
|
|
|
| disabled | 是否禁用 | boolean | | false |
|
|
|
|
|
| clearable | 单选时是否可以清空选项 | boolean | | false |
|
|
|
|
|
| width | select 的宽度 | number | | 180(单选)/220(多选) |
|
|
|
|
|
| dropdown-width | 下拉菜单的宽度,不设置则与输入框同宽 | number | | |
|
|
|
|
|
| name | select input 的 name 属性 | string | | |
|
|
|
|
|
| placeholder | 占位符 | string | | '请选择' |
|
|
|
|
|
| filterable | 是否可搜索 | boolean | | false |
|
|
|
|
|
| filter-method | 自定义过滤方法 | function | | |
|
|
|
|
|
| remote | 是否为远程搜索 | boolean | | false |
|
|
|
|
|
| remote-method | 远程搜索方法,当搜索关键字变化时会调用该方法,参数为目前的搜索关键字 | function | | |
|
|
|
|
|
| loading | 是否正在从远程获取数据 | boolean | | false |
|
2016-08-15 05:35:16 +00:00
|
|
|
|
|
|
|
|
|
### el-select 事件
|
|
|
|
|
| 事件名称 | 说明 | 回调参数 |
|
|
|
|
|
|---------|---------|---------|
|
|
|
|
|
| change | value 发生变化| `value` |
|
2016-07-27 06:15:02 +00:00
|
|
|
|
|
|
|
|
|
### el-option-group
|
|
|
|
|
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
|
|
|
|
|---------- |-------------- |---------- |-------------------------------- |-------- |
|
|
|
|
|
| label | 分组的标签 | string | | |
|
|
|
|
|
| disabled | 是否将该分组下所有选项置为禁用 | boolean | | false |
|
|
|
|
|
|
|
|
|
|
### el-option
|
|
|
|
|
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
|
|
|
|
|---------- |-------------- |---------- |-------------------------------- |-------- |
|
|
|
|
|
| value | 选项的值 | string/number | | |
|
|
|
|
|
| label | 选项的标签,若不设置则默认与 `value` 相同 | string/number | | |
|
|
|
|
|
| disabled | 是否禁用该选项 | boolean | | false |
|
|
|
|
|
| selected | 选项是否被初始选中 | boolean | | false |
|