Commit 7dcfe45d1b2e5895c21f5045997d2eb6ba14bb4c

Authored by 梁灏
1 parent f10b27f9

update Select

examples/routers/select.vue
@@ -2,8 +2,8 @@ @@ -2,8 +2,8 @@
2 <Row> 2 <Row>
3 <i-col span="4">{{model}}</i-col> 3 <i-col span="4">{{model}}</i-col>
4 <i-col span="8"> 4 <i-col span="8">
5 - <i-select v-model="model" multiple filterable remote :remote-method="remoteMethod" :loading="loading" clearable>  
6 - <i-option v-for="option in options" :value="option.value" :key="option">{{option.label}}</i-option> 5 + <i-select v-model="model" @input="handleInput" multiple filterable remote :remote-method="remoteMethod" :loading="loading" clearable>
  6 + <i-option v-for="option in options" :value="option.value" :key="new Date()">{{option.label}}</i-option>
7 </i-select> 7 </i-select>
8 </i-col> 8 </i-col>
9 </Row> 9 </Row>
@@ -82,10 +82,13 @@ @@ -82,10 +82,13 @@
82 return item.label.toLowerCase() 82 return item.label.toLowerCase()
83 .indexOf(query.toLowerCase()) > -1; 83 .indexOf(query.toLowerCase()) > -1;
84 }); 84 });
85 - }, 200); 85 + }, 500);
86 } else { 86 } else {
87 this.options = []; 87 this.options = [];
88 } 88 }
  89 + },
  90 + handleInput () {
  91 +// console.log(1)
89 } 92 }
90 }, 93 },
91 mounted () { 94 mounted () {
src/components/select/select.vue
@@ -222,9 +222,12 @@ @@ -222,9 +222,12 @@
222 cb(child); 222 cb(child);
223 } else if (child.$children.length) { 223 } else if (child.$children.length) {
224 _this.$nextTick(() => { 224 _this.$nextTick(() => {
225 - child.$children.forEach((innerChild) => {  
226 - find(innerChild, cb);  
227 - }); 225 +// child.$children.forEach((innerChild) => {
  226 +// find(innerChild, cb);
  227 +// });
  228 + });
  229 + child.$children.forEach((innerChild) => {
  230 + find(innerChild, cb);
228 }); 231 });
229 } 232 }
230 }; 233 };
@@ -300,6 +303,7 @@ @@ -300,6 +303,7 @@
300 }, 303 },
301 updateMultipleSelected (init = false, slot = false) { 304 updateMultipleSelected (init = false, slot = false) {
302 if (this.multiple && Array.isArray(this.model)) { 305 if (this.multiple && Array.isArray(this.model)) {
  306 + // todo 这里的 label 有问题,另删除字符时也有问题
303 let selected = this.remote ? this.selectedMultiple : []; 307 let selected = this.remote ? this.selectedMultiple : [];
304 308
305 for (let i = 0; i < this.model.length; i++) { 309 for (let i = 0; i < this.model.length; i++) {