javascript - 简单比较抛出错误结果Vue
问题描述
我在模态中有 2 个组件。
首先:
<v-text-field
label="Limite de faltantes"
type="number"
v-model="lim_faltProd"
></v-text-field>
第二:
<v-text-field
label="Limite de excedentes"
type="number"
v-model="lim_excProd"
></v-text-field>
我的组件导出:
export default {
props: ['nombre', 'precio', 'lim_falt', 'lim_exc', 'id'],
data () {
return {
error: '',
idProd: this.id,
nombreProd: this.nombre,
precioProd: this.precio,
lim_faltProd: this.lim_falt,
lim_excProd: this.lim_exc
}
},
watch: {
nombre () {
this.nombreProd = this.nombre
},
precio () {
this.precioProd = this.precio
},
lim_falt () {
this.lim_faltProd = this.lim_falt
},
lim_exc () {
this.lim_excProd = this.lim_exc
},
id () {
this.idProd = this.id
}
}
所以当我尝试做这样一个简单的事情时
this.lim_faltProd >= this.lim_excProd
它变得疯狂。
看看这个,我明白了
console.log(this.lim_faltProd) // 20
console.log(this.lim_excProd) // 100
console.log(this.lim_faltProd >= this.lim_excProd) // 抛出 TRUE!!!!
我会展示它: 我有一个功能:
async registrarProducto () {
this.error = this.lim_faltProd > this.lim_excProd
}
结果:
解决方案
您正在比较字符串;"20"
大于"100"
因为"2"
大于"1"
(第一个字符)。如果要比较数值,请将它们转换为Number :
this.error = Number(this.lim_faltProd) >= Number(this.lim_excProd)
console.log("20" >= "100")
console.log(Number("20") >= Number("100"))
推荐阅读
- php - 尽管我已经声明了变量,但出现未定义的变量错误
- rest - 使用 devMode 的 Apps 脚本执行 API 404 错误:true
- sql - 插入表 oracle
- java - 为什么在尝试使用 spring-data-jpa 锁定但未能获得锁定后关闭数据库连接?
- php - 自定义 WooCommerce 日期选择器结帐字段已保存并显示在订单和电子邮件中
- python - 在 Python 中,对象有自己的类变量副本吗?
- php - 尝试升级到 laravel 5.3,但我一直看到错误“调用未定义的方法 Illuminate\Auth\Access\Gate::abilities()”
- elasticsearch - 如何从弹性搜索中获取条件数据
- java - 由于会话选项无效,Android webrtc 无法创建报价
- php - 端口监听命令注入