fix(v-model): properly detect input type=number

fix #3813
This commit is contained in:
Evan You
2021-07-19 17:46:04 -04:00
parent 93a950d60d
commit 3056e9b3dc
2 changed files with 33 additions and 1 deletions

View File

@@ -49,7 +49,8 @@ export const vModelText: ModelDirective<
> = {
created(el, { modifiers: { lazy, trim, number } }, vnode) {
el._assign = getModelAssigner(vnode)
const castToNumber = number || el.type === 'number'
const castToNumber =
number || (vnode.props && vnode.props.type === 'number')
addEventListener(el, lazy ? 'change' : 'input', e => {
if ((e.target as any).composing) return
let domValue: string | number = el.value