Commit feb21a0a16e3c68a137af188fe81d2fc346d71dd

Authored by 梁灏
1 parent 037de052

fixed #2893

examples/routers/select.vue
@@ -167,50 +167,105 @@ @@ -167,50 +167,105 @@
167 <!--}--> 167 <!--}-->
168 <!--</script>--> 168 <!--</script>-->
169 169
  170 +<!--<template>-->
  171 + <!--<div style="width: 300px">-->
  172 + <!--<Select-->
  173 + <!--v-model="model14"-->
  174 + <!--multiple-->
  175 + <!--filterable-->
  176 + <!--remote-->
  177 + <!--:remote-method="remoteMethod2"-->
  178 + <!--:loading="loading2">-->
  179 + <!--<Option v-for="(option, index) in options2" :value="option.value" :key="index">{{option.label}}</Option>-->
  180 + <!--</Select>-->
  181 + <!--</div>-->
  182 +<!--</template>-->
  183 +<!--<script>-->
  184 + <!--export default {-->
  185 + <!--data () {-->
  186 + <!--return {-->
  187 + <!--model13: '',-->
  188 + <!--loading1: false,-->
  189 + <!--options1: [],-->
  190 + <!--model14: [],-->
  191 + <!--loading2: false,-->
  192 + <!--options2: [],-->
  193 + <!--list: ['a', 'b', 'c']-->
  194 + <!--}-->
  195 + <!--},-->
  196 + <!--methods: {-->
  197 + <!--remoteMethod2 (query) {-->
  198 + <!--if (query !== '') {-->
  199 + <!--this.loading2 = true;-->
  200 + <!--setTimeout(() => {-->
  201 + <!--this.loading2 = false;-->
  202 + <!--const list = this.list.map(item => {-->
  203 + <!--return {-->
  204 + <!--value: item,-->
  205 + <!--label: item-->
  206 + <!--};-->
  207 + <!--});-->
  208 + <!--this.options2 = list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);-->
  209 + <!--}, 200);-->
  210 + <!--} else {-->
  211 + <!--this.options2 = [];-->
  212 + <!--}-->
  213 + <!--}-->
  214 + <!--}-->
  215 + <!--}-->
  216 +<!--</script>-->
  217 +
  218 +
170 <template> 219 <template>
171 - <div style="width: 300px">  
172 - <Select  
173 - v-model="model14"  
174 - multiple  
175 - filterable  
176 - remote  
177 - :remote-method="remoteMethod2"  
178 - :loading="loading2">  
179 - <Option v-for="(option, index) in options2" :value="option.value" :key="index">{{option.label}}</Option> 220 + <Row>
  221 + <Col span="12" style="padding-right:10px">
  222 + <Select v-model="model11" disabled filterable>
  223 + <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option>
180 </Select> 224 </Select>
181 - </div> 225 + </Col>
  226 + <Col span="12">
  227 + <!--<Select v-model="model12" filterable multiple>-->
  228 + <!--<Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option>-->
  229 + <!--</Select>-->
  230 + <Input v-model="model13" disabled="" />
  231 + </Col>
  232 + </Row>
182 </template> 233 </template>
183 <script> 234 <script>
184 export default { 235 export default {
185 data () { 236 data () {
186 return { 237 return {
187 - model13: '',  
188 - loading1: false,  
189 - options1: [],  
190 - model14: [],  
191 - loading2: false,  
192 - options2: [],  
193 - list: ['a', 'b', 'c']  
194 - }  
195 - },  
196 - methods: {  
197 - remoteMethod2 (query) {  
198 - if (query !== '') {  
199 - this.loading2 = true;  
200 - setTimeout(() => {  
201 - this.loading2 = false;  
202 - const list = this.list.map(item => {  
203 - return {  
204 - value: item,  
205 - label: item  
206 - };  
207 - });  
208 - this.options2 = list.filter(item => item.label.toLowerCase().indexOf(query.toLowerCase()) > -1);  
209 - }, 200);  
210 - } else {  
211 - this.options2 = [];  
212 - } 238 + cityList: [
  239 + {
  240 + value: 'New York',
  241 + label: 'New York'
  242 + },
  243 + {
  244 + value: 'London',
  245 + label: 'London'
  246 + },
  247 + {
  248 + value: 'Sydney',
  249 + label: 'Sydney'
  250 + },
  251 + {
  252 + value: 'Ottawa',
  253 + label: 'Ottawa'
  254 + },
  255 + {
  256 + value: 'Paris',
  257 + label: 'Paris'
  258 + },
  259 + {
  260 + value: 'Canberra',
  261 + label: 'Canberra'
  262 + }
  263 + ],
  264 + model11: 'New York',
  265 + model12: [],
  266 + model13: 'New York'
213 } 267 }
214 } 268 }
215 } 269 }
216 </script> 270 </script>
  271 +
src/styles/components/select.less
@@ -149,6 +149,11 @@ @@ -149,6 +149,11 @@
149 position: relative; 149 position: relative;
150 cursor: pointer; 150 cursor: pointer;
151 .placeholder(); 151 .placeholder();
  152 +
  153 + &[disabled]{
  154 + cursor: @cursor-disabled;
  155 + color: #ccc;
  156 + }
152 } 157 }
153 158
154 &-single &-input{ 159 &-single &-input{