Commit daa9827c92ccdef437c420a47f724bc740b861cc
1 parent
6da6fffa
fixed #1553
Showing
3 changed files
with
114 additions
and
106 deletions
Show diff stats
examples/routers/cascader.vue
| 1 | <template> | 1 | <template> |
| 2 | - <div style="width: 400px;"> | ||
| 3 | - <Row> | ||
| 4 | - <i-col span="12"> | ||
| 5 | - <Cascader transfer v-model="value3" :data="data" filterable></Cascader> | ||
| 6 | - </i-col> | ||
| 7 | - <i-col span="12"> | ||
| 8 | - <Cascader v-model="value3" :data="data" filterable></Cascader> | ||
| 9 | - </i-col> | ||
| 10 | - </Row> | 2 | + <div style="margin: 100px;width: 200px;"> |
| 3 | + <Cascader :data="data" v-model="value1" change-on-select></Cascader> | ||
| 11 | </div> | 4 | </div> |
| 12 | </template> | 5 | </template> |
| 13 | <script> | 6 | <script> |
| 14 | export default { | 7 | export default { |
| 15 | data () { | 8 | data () { |
| 16 | return { | 9 | return { |
| 10 | + value1: [], | ||
| 17 | data: [{ | 11 | data: [{ |
| 18 | value: 'beijing', | 12 | value: 'beijing', |
| 19 | label: '北京', | 13 | label: '北京', |
| @@ -60,8 +54,7 @@ | @@ -60,8 +54,7 @@ | ||
| 60 | ] | 54 | ] |
| 61 | } | 55 | } |
| 62 | ], | 56 | ], |
| 63 | - }], | ||
| 64 | - value3: [] | 57 | + }] |
| 65 | } | 58 | } |
| 66 | } | 59 | } |
| 67 | } | 60 | } |
src/components/cascader/caspanel.vue
| @@ -15,7 +15,7 @@ | @@ -15,7 +15,7 @@ | ||
| 15 | <script> | 15 | <script> |
| 16 | import Casitem from './casitem.vue'; | 16 | import Casitem from './casitem.vue'; |
| 17 | import Emitter from '../../mixins/emitter'; | 17 | import Emitter from '../../mixins/emitter'; |
| 18 | - import { findComponentUpward } from '../../utils/assist'; | 18 | + import { findComponentUpward, findComponentDownward } from '../../utils/assist'; |
| 19 | 19 | ||
| 20 | let key = 1; | 20 | let key = 1; |
| 21 | 21 | ||
| @@ -84,6 +84,14 @@ | @@ -84,6 +84,14 @@ | ||
| 84 | changeOnSelect: this.changeOnSelect, | 84 | changeOnSelect: this.changeOnSelect, |
| 85 | fromInit: fromInit | 85 | fromInit: fromInit |
| 86 | }); | 86 | }); |
| 87 | + | ||
| 88 | + // #1553 | ||
| 89 | + if (this.changeOnSelect) { | ||
| 90 | + const Caspanel = findComponentDownward(this, 'Caspanel'); | ||
| 91 | + if (Caspanel) { | ||
| 92 | + Caspanel.$emit('on-clear', true); | ||
| 93 | + } | ||
| 94 | + } | ||
| 87 | } else { | 95 | } else { |
| 88 | this.sublist = []; | 96 | this.sublist = []; |
| 89 | this.dispatch('Cascader', 'on-result-change', { | 97 | this.dispatch('Cascader', 'on-result-change', { |
| @@ -135,9 +143,16 @@ | @@ -135,9 +143,16 @@ | ||
| 135 | } | 143 | } |
| 136 | } | 144 | } |
| 137 | }); | 145 | }); |
| 138 | - this.$on('on-clear', () => { | 146 | + // deep for #1553 |
| 147 | + this.$on('on-clear', (deep = false) => { | ||
| 139 | this.sublist = []; | 148 | this.sublist = []; |
| 140 | this.tmpItem = {}; | 149 | this.tmpItem = {}; |
| 150 | + if (deep) { | ||
| 151 | + const Caspanel = findComponentDownward(this, 'Caspanel'); | ||
| 152 | + if (Caspanel) { | ||
| 153 | + Caspanel.$emit('on-clear', true); | ||
| 154 | + } | ||
| 155 | + } | ||
| 141 | }); | 156 | }); |
| 142 | } | 157 | } |
| 143 | }; | 158 | }; |
src/locale/lang/vi-VN.js
| 1 | export default { | 1 | export default { |
| 2 | - i: { | ||
| 3 | - select: { | ||
| 4 | - placeholder: 'Chọn', | ||
| 5 | - noMatch: 'Không tìm thấy', | ||
| 6 | - loading: 'Đang tải' | ||
| 7 | - }, | ||
| 8 | - table: { | ||
| 9 | - noDataText: 'Không có dữ liệu', | ||
| 10 | - noFilteredDataText: 'Không có dữ liệu lọc', | ||
| 11 | - confirmFilter: 'Xác nhận', | ||
| 12 | - resetFilter: 'Làm lại', | ||
| 13 | - clearFilter: 'Xóa hết' | ||
| 14 | - }, | ||
| 15 | - datepicker: { | ||
| 16 | - selectDate: 'Chọn ngày', | ||
| 17 | - selectTime: 'Chọn giờ', | ||
| 18 | - startTime: 'Ngày bắt đầu', | ||
| 19 | - endTime: 'Ngày kết thúc', | ||
| 20 | - clear: 'Xóa', | ||
| 21 | - ok: 'Đồng ý', | ||
| 22 | - month: '', | ||
| 23 | - month1: 'Tháng 1', | ||
| 24 | - month2: 'Tháng 2', | ||
| 25 | - month3: 'Tháng 3', | ||
| 26 | - month4: 'Tháng 4', | ||
| 27 | - month5: 'Tháng 5', | ||
| 28 | - month6: 'Tháng 6', | ||
| 29 | - month7: 'Tháng 7', | ||
| 30 | - month8: 'Tháng 8', | ||
| 31 | - month9: 'Tháng 9', | ||
| 32 | - month10: 'Tháng 10', | ||
| 33 | - month11: 'Tháng 11', | ||
| 34 | - month12: 'Tháng 12', | ||
| 35 | - year: '', | ||
| 36 | - weeks: { | ||
| 37 | - sun: 'CN', | ||
| 38 | - mon: 'T2', | ||
| 39 | - tue: 'T3', | ||
| 40 | - wed: 'T4', | ||
| 41 | - thu: 'T5', | ||
| 42 | - fri: 'T6', | ||
| 43 | - sat: 'T7' | ||
| 44 | - }, | ||
| 45 | - months: { | ||
| 46 | - m1: 'Th.1', | ||
| 47 | - m2: 'Th.2', | ||
| 48 | - m3: 'Th.3', | ||
| 49 | - m4: 'Th.4', | ||
| 50 | - m5: 'Th.5', | ||
| 51 | - m6: 'Th.6', | ||
| 52 | - m7: 'Th.7', | ||
| 53 | - m8: 'Th.8', | ||
| 54 | - m9: 'Th.9', | ||
| 55 | - m10: 'Th.10', | ||
| 56 | - m11: 'Th.11', | ||
| 57 | - m12: 'Th.12' | ||
| 58 | - } | ||
| 59 | - }, | ||
| 60 | - transfer: { | ||
| 61 | - titles: { | ||
| 62 | - source: 'Nguồn', | ||
| 63 | - target: 'Đích' | ||
| 64 | - }, | ||
| 65 | - filterPlaceholder: 'Nhập từ khóa', | ||
| 66 | - notFoundText: 'Không tìm thấy' | ||
| 67 | - }, | ||
| 68 | - modal: { | ||
| 69 | - okText: 'Đồng ý', | ||
| 70 | - cancelText: 'Hủy bỏ' | ||
| 71 | - }, | ||
| 72 | - poptip: { | ||
| 73 | - okText: 'Đồng ý', | ||
| 74 | - cancelText: 'Hủy bỏ' | ||
| 75 | - }, | ||
| 76 | - page: { | ||
| 77 | - prev: 'Trang trước', | ||
| 78 | - next: 'Trang kế', | ||
| 79 | - total: 'Tổng', | ||
| 80 | - item: 'kết quả', | ||
| 81 | - items: 'kết quả', | ||
| 82 | - prev5: '5 trang trước', | ||
| 83 | - next5: '5 trang kế', | ||
| 84 | - page: '/trang', | ||
| 85 | - goto: 'Tới trang', | ||
| 86 | - p: '' | ||
| 87 | - }, | ||
| 88 | - rate: { | ||
| 89 | - star: 'Sao', | ||
| 90 | - stars: 'Sao' | ||
| 91 | - }, | ||
| 92 | - tree: { | ||
| 93 | - emptyText: 'Không có dữ liệu' | 2 | + i: { |
| 3 | + select: { | ||
| 4 | + placeholder: 'Chọn', | ||
| 5 | + noMatch: 'Không tìm thấy', | ||
| 6 | + loading: 'Đang tải' | ||
| 7 | + }, | ||
| 8 | + table: { | ||
| 9 | + noDataText: 'Không có dữ liệu', | ||
| 10 | + noFilteredDataText: 'Không có dữ liệu lọc', | ||
| 11 | + confirmFilter: 'Xác nhận', | ||
| 12 | + resetFilter: 'Làm lại', | ||
| 13 | + clearFilter: 'Xóa hết' | ||
| 14 | + }, | ||
| 15 | + datepicker: { | ||
| 16 | + selectDate: 'Chọn ngày', | ||
| 17 | + selectTime: 'Chọn giờ', | ||
| 18 | + startTime: 'Ngày bắt đầu', | ||
| 19 | + endTime: 'Ngày kết thúc', | ||
| 20 | + clear: 'Xóa', | ||
| 21 | + ok: 'Đồng ý', | ||
| 22 | + month: '', | ||
| 23 | + month1: 'Tháng 1', | ||
| 24 | + month2: 'Tháng 2', | ||
| 25 | + month3: 'Tháng 3', | ||
| 26 | + month4: 'Tháng 4', | ||
| 27 | + month5: 'Tháng 5', | ||
| 28 | + month6: 'Tháng 6', | ||
| 29 | + month7: 'Tháng 7', | ||
| 30 | + month8: 'Tháng 8', | ||
| 31 | + month9: 'Tháng 9', | ||
| 32 | + month10: 'Tháng 10', | ||
| 33 | + month11: 'Tháng 11', | ||
| 34 | + month12: 'Tháng 12', | ||
| 35 | + year: '', | ||
| 36 | + weeks: { | ||
| 37 | + sun: 'CN', | ||
| 38 | + mon: 'T2', | ||
| 39 | + tue: 'T3', | ||
| 40 | + wed: 'T4', | ||
| 41 | + thu: 'T5', | ||
| 42 | + fri: 'T6', | ||
| 43 | + sat: 'T7' | ||
| 44 | + }, | ||
| 45 | + months: { | ||
| 46 | + m1: 'Th.1', | ||
| 47 | + m2: 'Th.2', | ||
| 48 | + m3: 'Th.3', | ||
| 49 | + m4: 'Th.4', | ||
| 50 | + m5: 'Th.5', | ||
| 51 | + m6: 'Th.6', | ||
| 52 | + m7: 'Th.7', | ||
| 53 | + m8: 'Th.8', | ||
| 54 | + m9: 'Th.9', | ||
| 55 | + m10: 'Th.10', | ||
| 56 | + m11: 'Th.11', | ||
| 57 | + m12: 'Th.12' | ||
| 58 | + } | ||
| 59 | + }, | ||
| 60 | + transfer: { | ||
| 61 | + titles: { | ||
| 62 | + source: 'Nguồn', | ||
| 63 | + target: 'Đích' | ||
| 64 | + }, | ||
| 65 | + filterPlaceholder: 'Nhập từ khóa', | ||
| 66 | + notFoundText: 'Không tìm thấy' | ||
| 67 | + }, | ||
| 68 | + modal: { | ||
| 69 | + okText: 'Đồng ý', | ||
| 70 | + cancelText: 'Hủy bỏ' | ||
| 71 | + }, | ||
| 72 | + poptip: { | ||
| 73 | + okText: 'Đồng ý', | ||
| 74 | + cancelText: 'Hủy bỏ' | ||
| 75 | + }, | ||
| 76 | + page: { | ||
| 77 | + prev: 'Trang trước', | ||
| 78 | + next: 'Trang kế', | ||
| 79 | + total: 'Tổng', | ||
| 80 | + item: 'kết quả', | ||
| 81 | + items: 'kết quả', | ||
| 82 | + prev5: '5 trang trước', | ||
| 83 | + next5: '5 trang kế', | ||
| 84 | + page: '/trang', | ||
| 85 | + goto: 'Tới trang', | ||
| 86 | + p: '' | ||
| 87 | + }, | ||
| 88 | + rate: { | ||
| 89 | + star: 'Sao', | ||
| 90 | + stars: 'Sao' | ||
| 91 | + }, | ||
| 92 | + tree: { | ||
| 93 | + emptyText: 'Không có dữ liệu' | ||
| 94 | + } | ||
| 94 | } | 95 | } |
| 95 | - } | ||
| 96 | }; | 96 | }; |