Commit cb2678c4b93bead14dd2cdd96ff7a39034429c98

Authored by 梁灏
1 parent 7fdad3a3

fix InputNumber bug in 2.4.0, and release 2.4.0-beta.3

examples/routers/input-number.vue
@@ -6,7 +6,7 @@ @@ -6,7 +6,7 @@
6 <!--<div @click="changeMax">change max</div>--> 6 <!--<div @click="changeMax">change max</div>-->
7 <!--<Input-number disabled :max="10" :min="1" :step="1.2" v-model="v2"></Input-number>--> 7 <!--<Input-number disabled :max="10" :min="1" :step="1.2" v-model="v2"></Input-number>-->
8 <!--<Input-number :max="10" :min="1" v-model="obj.v"></Input-number>--> 8 <!--<Input-number :max="10" :min="1" v-model="obj.v"></Input-number>-->
9 - {{ value1 }} 9 + <InputNumber :max="10" :min="1" :step="1.2" v-model="value2"></InputNumber>
10 <InputNumber :precision="1" :max="10" :min="1" :step="0.1" v-model="value1"></InputNumber> 10 <InputNumber :precision="1" :max="10" :min="1" :step="0.1" v-model="value1"></InputNumber>
11 </div> 11 </div>
12 </template> 12 </template>
@@ -22,7 +22,8 @@ @@ -22,7 +22,8 @@
22 obj: { 22 obj: {
23 23
24 }, 24 },
25 - value1: 1.0 25 + value1: 1.0,
  26 + value2: 1
26 }; 27 };
27 }, 28 },
28 computed: {}, 29 computed: {},
1 { 1 {
2 "name": "iview", 2 "name": "iview",
3 - "version": "2.4.0-beta.2", 3 + "version": "2.4.0-beta.3",
4 "title": "iView", 4 "title": "iView",
5 "description": "A high quality UI components Library with Vue.js", 5 "description": "A high quality UI components Library with Vue.js",
6 "homepage": "http://www.iviewui.com", 6 "homepage": "http://www.iviewui.com",
src/components/input-number/input-number.vue
@@ -161,7 +161,7 @@ @@ -161,7 +161,7 @@
161 }, 161 },
162 precisionValue () { 162 precisionValue () {
163 // can not display 1.0 163 // can not display 1.0
164 - return this.currentValue.toFixed(this.precision); 164 + return this.precision ? this.currentValue.toFixed(this.precision) : this.currentValue;
165 } 165 }
166 }, 166 },
167 methods: { 167 methods: {
@@ -219,7 +219,9 @@ @@ -219,7 +219,9 @@
219 this.setValue(val); 219 this.setValue(val);
220 }, 220 },
221 setValue (val) { 221 setValue (val) {
222 - val = Number(Number(val).toFixed(this.precision)); 222 + // 如果 step 是小数,且没有设置 precision,是有问题的
  223 + if (this.precision) val = Number(Number(val).toFixed(this.precision));
  224 +
223 this.$nextTick(() => { 225 this.$nextTick(() => {
224 this.currentValue = val; 226 this.currentValue = val;
225 this.$emit('input', val); 227 this.$emit('input', val);