Commit 07e122c682f96fa81e6322d4ef9139e928c75c7a
Committed by
GitHub
Merge pull request #3395 from angela-1/dev-inputnumber
实现InputNumber获取焦点时选中已有值,增加on-focus的返回值event。
Showing
2 changed files
with
8 additions
and
2 deletions
Show diff stats
examples/routers/input-number.vue
| @@ -48,6 +48,8 @@ | @@ -48,6 +48,8 @@ | ||
| 48 | 48 | ||
| 49 | <InputNumber v-model="valueNull" @on-change="change" style="width: 200px"></InputNumber> | 49 | <InputNumber v-model="valueNull" @on-change="change" style="width: 200px"></InputNumber> |
| 50 | <InputNumber v-model="valueNull" @on-change="change" :formatter="formatter" :parser="parser" style="width: 200px"></InputNumber> | 50 | <InputNumber v-model="valueNull" @on-change="change" :formatter="formatter" :parser="parser" style="width: 200px"></InputNumber> |
| 51 | + | ||
| 52 | + <InputNumber v-model="value2" @on-focus="focus" style="width: 200px"></InputNumber> | ||
| 51 | </div> | 53 | </div> |
| 52 | </template> | 54 | </template> |
| 53 | <script> | 55 | <script> |
| @@ -64,6 +66,9 @@ | @@ -64,6 +66,9 @@ | ||
| 64 | } | 66 | } |
| 65 | }, | 67 | }, |
| 66 | methods: { | 68 | methods: { |
| 69 | + focus (e) { | ||
| 70 | + e.target.select() | ||
| 71 | + }, | ||
| 67 | change (v) { | 72 | change (v) { |
| 68 | console.log(v) | 73 | console.log(v) |
| 69 | } | 74 | } |
src/components/input-number/input-number.vue
| @@ -26,6 +26,7 @@ | @@ -26,6 +26,7 @@ | ||
| 26 | @blur="blur" | 26 | @blur="blur" |
| 27 | @keydown.stop="keyDown" | 27 | @keydown.stop="keyDown" |
| 28 | @input="change" | 28 | @input="change" |
| 29 | + @mouseup="preventDefault" | ||
| 29 | @change="change" | 30 | @change="change" |
| 30 | :readonly="readonly || !editable" | 31 | :readonly="readonly || !editable" |
| 31 | :name="name" | 32 | :name="name" |
| @@ -250,9 +251,9 @@ | @@ -250,9 +251,9 @@ | ||
| 250 | this.dispatch('FormItem', 'on-form-change', val); | 251 | this.dispatch('FormItem', 'on-form-change', val); |
| 251 | }); | 252 | }); |
| 252 | }, | 253 | }, |
| 253 | - focus () { | 254 | + focus (event) { |
| 254 | this.focused = true; | 255 | this.focused = true; |
| 255 | - this.$emit('on-focus'); | 256 | + this.$emit('on-focus', event); |
| 256 | }, | 257 | }, |
| 257 | blur () { | 258 | blur () { |
| 258 | this.focused = false; | 259 | this.focused = false; |