javascript - Prop 的 Vue.js Prop 验证

标签 javascript vue.js vuejs2

我有一个带有以下 Prop 声明的子组件:

   props: {
        count: Number,
        maxNum: Number
   }

这通常没问题,但我也将 maxNum 映射到输入字段:

<input type="text" v-model="maxNum" value="maxNum">

因此,即使用户在输入中输入“4”,Vue.js 也会认为它是一个字符串,而实际上如果正确解析它是一个有效数字。

我试过这样做,但在输入“apple”时没有正确失败:

   props: {
        maxNum: {
            validator: function (v) {
                parseInt(v);
                return true;
            }
        }
   }

当涉及到 v 模型时,验证 props 的规定方法是什么?

最佳答案

啊,显然 Vue.JS 实际上提供了一种很好的方法来做到这一点。

<input type="text" v-model.number="maxNum" value="maxNum">

.number 修饰符让 v-model 方程的 v-bind:value 部分将输入值视为数字.

引用v-model.number in Vue.JS guide is here .

关于javascript - Prop 的 Vue.js Prop 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43567498/

相关文章:

callback - Vue.js 2 和 auth0 身份验证结果为 'nonce'

javascript - touchstart 上没有原始事件

javascript - 使用 jquery 选择单个 li 的能力

javascript - 使用 Vue JS 和 for 循环设置事件状态

javascript - vue中如何使用外部js文件

vuejs2 - 从计算字符串创建换行符

javascript - react Hook : Adding new fields to an Object state does not get reflected immediately

javascript - websocket 服务器,存储数据

unit-testing - 带有 Vuetify 的 Vue Composition Api 未能通过 jest 进行单元测试

javascript - 在加载时无需事件即可将数据从子级传递到父级,这在 vue 世界中可能吗?