<script> import Select, { Option } from '../index'; import '../assets/index.less'; export default { data () { return { destroy: false, value: 9, }; }, methods: { onChange (e) { let value; if (e && e.target) { value = e.target.value; } else { value = e; } console.log('onChange', value, ...arguments); this.value = value; }, onDestroy () { this.destroy = 1; }, onBlur (v) { console.log('onBlur', v); }, onFocus () { console.log('onFocus'); }, }, render () { if (this.destroy) { return null; } return (<div style={{ margin: '20px' }}> <div style={{ height: '150px' }}/> <h2>Single Select</h2> <div style={{ width: '300px' }}> <Select id='my-select' value={this.value} placeholder='placeholder' dropdownMenuStyle={{ maxHeight: '200px' }} style={{ width: '500px' }} onBlur={this.onBlur} onFocus={this.onFocus} allowClear optionLabelProp='children' optionFilterProp='text' onChange={this.onChange} firstActiveValue='2' backfill > <Option value='01' text='jack' title='jack'> <b style={{ color: 'red', }} > jack </b> </Option> <Option value='11' text='lucy'>lucy</Option> <Option value='21' disabled text='disabled'>disabled</Option> <Option value='31' text='yiminghe'>yiminghe</Option> {[0, 1, 2, 3, 4, 5, 6, 7, 8, 9].map((i) => { return <Option key={i} value={i} text={String(i)}>{i}-text</Option>; })} </Select> </div> <h2>native select</h2> <select value={this.value} style={{ width: '500px' }} onChange={this.onChange} > <option value='01'>jack</option> <option value='11'>lucy</option> <option value='21' disabled>disabled</option> <option value='31'>yiminghe</option> {[1, 2, 3, 4, 5, 6, 7, 8, 9].map((i) => { return <option value={i} key={i}>{i}</option>; })} </select> <p> <button onClick={this.onDestroy}>destroy</button> </p> </div>); }, }; </script>