65 lines
1.4 KiB
Vue
65 lines
1.4 KiB
Vue
<script>
|
|
import Select, { Option } from '../index'
|
|
import '../assets/index.less'
|
|
|
|
export default {
|
|
data () {
|
|
return {
|
|
disabled: false,
|
|
value: '',
|
|
}
|
|
},
|
|
methods: {
|
|
onChange (value, option) {
|
|
console.log('onChange', value, option)
|
|
this.value = value
|
|
},
|
|
|
|
onKeyDown (e) {
|
|
if (e.keyCode === 13) {
|
|
console.log('onEnter', this.value)
|
|
}
|
|
},
|
|
|
|
onSelect (v, option) {
|
|
console.log('onSelect', v, option)
|
|
},
|
|
|
|
toggleDisabled () {
|
|
this.disabled = !this.disabled
|
|
},
|
|
},
|
|
|
|
render () {
|
|
return (<div>
|
|
<h2>combobox</h2>
|
|
<p>
|
|
<button onClick={this.toggleDisabled}>toggle disabled</button>
|
|
</p>
|
|
<div style={{ width: '300px' }}>
|
|
<Select
|
|
disabled={this.disabled}
|
|
style={{ width: '500px' }}
|
|
onChange={this.onChange}
|
|
onSelect={this.onSelect}
|
|
onInputKeydown={this.onKeyDown}
|
|
notFoundContent=''
|
|
allowClear
|
|
placeholder='please select'
|
|
value={this.value}
|
|
combobox
|
|
backfill
|
|
>
|
|
<Option value='jack'>
|
|
<b style={{ color: 'red' }}>jack</b>
|
|
</Option>
|
|
<Option value='lucy'>lucy</Option>
|
|
<Option value='disabled' disabled>disabled</Option>
|
|
<Option value='yiminghe'>yiminghe</Option>
|
|
</Select>
|
|
</div>
|
|
</div>)
|
|
},
|
|
}
|
|
</script>
|