Commit 5a9a12cd1c1270f976d788eeedfed8f43b1a5fa4
1 parent
0ce5e00d
update Cascader
Showing
2 changed files
with
54 additions
and
3 deletions
Show diff stats
examples/routers/cascader.vue
| @@ -4,8 +4,8 @@ | @@ -4,8 +4,8 @@ | ||
| 4 | <Button @click="handleLoad">load</Button> | 4 | <Button @click="handleLoad">load</Button> |
| 5 | </i-col> | 5 | </i-col> |
| 6 | <i-col span="6"> | 6 | <i-col span="6"> |
| 7 | - <!--<Cascader :data="data2" v-model="v1" change-on-select></Cascader>--> | ||
| 8 | - <Cascader :data="data2" v-model="v1" :loadData="loadData"></Cascader> | 7 | + <Cascader :data="data3" filterable v-model="v1"></Cascader> |
| 8 | + <!--<Cascader :data="data2" filterable v-model="v1" :loadData="loadData"></Cascader>--> | ||
| 9 | </i-col> | 9 | </i-col> |
| 10 | </Row> | 10 | </Row> |
| 11 | </template> | 11 | </template> |
| @@ -30,6 +30,53 @@ | @@ -30,6 +30,53 @@ | ||
| 30 | label: '中华门' | 30 | label: '中华门' |
| 31 | }] | 31 | }] |
| 32 | }] | 32 | }] |
| 33 | + }], | ||
| 34 | + data3: [{ | ||
| 35 | + value: 'beijing', | ||
| 36 | + label: '北京', | ||
| 37 | + children: [ | ||
| 38 | + { | ||
| 39 | + value: 'gugong', | ||
| 40 | + label: '故宫' | ||
| 41 | + }, | ||
| 42 | + { | ||
| 43 | + value: 'tiantan', | ||
| 44 | + label: '天坛' | ||
| 45 | + }, | ||
| 46 | + { | ||
| 47 | + value: 'wangfujing', | ||
| 48 | + label: '王府井' | ||
| 49 | + } | ||
| 50 | + ] | ||
| 51 | + }, { | ||
| 52 | + value: 'jiangsu', | ||
| 53 | + label: '江苏', | ||
| 54 | + children: [ | ||
| 55 | + { | ||
| 56 | + value: 'nanjing', | ||
| 57 | + label: '南京', | ||
| 58 | + children: [ | ||
| 59 | + { | ||
| 60 | + value: 'fuzimiao', | ||
| 61 | + label: '夫子庙', | ||
| 62 | + } | ||
| 63 | + ] | ||
| 64 | + }, | ||
| 65 | + { | ||
| 66 | + value: 'suzhou', | ||
| 67 | + label: '苏州', | ||
| 68 | + children: [ | ||
| 69 | + { | ||
| 70 | + value: 'zhuozhengyuan', | ||
| 71 | + label: '拙政园', | ||
| 72 | + }, | ||
| 73 | + { | ||
| 74 | + value: 'shizilin', | ||
| 75 | + label: '狮子林', | ||
| 76 | + } | ||
| 77 | + ] | ||
| 78 | + } | ||
| 79 | + ], | ||
| 33 | }] | 80 | }] |
| 34 | } | 81 | } |
| 35 | }, | 82 | }, |
src/components/cascader/cascader.vue
| @@ -3,7 +3,7 @@ | @@ -3,7 +3,7 @@ | ||
| 3 | <div :class="[prefixCls + '-rel']" @click="toggleOpen"> | 3 | <div :class="[prefixCls + '-rel']" @click="toggleOpen"> |
| 4 | <slot> | 4 | <slot> |
| 5 | <i-input | 5 | <i-input |
| 6 | - readonly | 6 | + :readonly="!filterable" |
| 7 | :disabled="disabled" | 7 | :disabled="disabled" |
| 8 | v-model="displayRender" | 8 | v-model="displayRender" |
| 9 | :size="size" | 9 | :size="size" |
| @@ -91,6 +91,10 @@ | @@ -91,6 +91,10 @@ | ||
| 91 | }, | 91 | }, |
| 92 | loadData: { | 92 | loadData: { |
| 93 | type: Function | 93 | type: Function |
| 94 | + }, | ||
| 95 | + filterable: { | ||
| 96 | + type: Boolean, | ||
| 97 | + default: false | ||
| 94 | } | 98 | } |
| 95 | }, | 99 | }, |
| 96 | data () { | 100 | data () { |