当前位置:首页 > VUE

vue实现input值相加

2026-01-21 04:37:03VUE

实现 Vue 中 input 值相加

在 Vue 中实现两个 input 值的相加,可以通过数据绑定和计算属性来完成。以下是具体实现方法:

模板部分

<template>
  <div>
    <input v-model.number="num1" type="number" placeholder="输入第一个数字">
    <input v-model.number="num2" type="number" placeholder="输入第二个数字">
    <p>相加结果: {{ sum }}</p>
  </div>
</template>

脚本部分

<script>
export default {
  data() {
    return {
      num1: 0,
      num2: 0
    }
  },
  computed: {
    sum() {
      return this.num1 + this.num2;
    }
  }
}
</script>

关键点说明

使用 v-model.number 修饰符确保输入值被自动转换为数字类型,避免字符串拼接问题。

计算属性 sum 会实时响应 num1num2 的变化,自动更新计算结果。

处理非数字输入

如果需要处理非数字输入的情况,可以添加验证逻辑:

computed: {
  sum() {
    const n1 = isNaN(this.num1) ? 0 : this.num1;
    const n2 = isNaN(this.num2) ? 0 : this.num2;
    return n1 + n2;
  }
}

使用 watch 实现

也可以使用 watch 来实现类似功能:

data() {
  return {
    num1: 0,
    num2: 0,
    sum: 0
  }
},
watch: {
  num1(newVal) {
    this.sum = Number(newVal) + Number(this.num2);
  },
  num2(newVal) {
    this.sum = Number(this.num1) + Number(newVal);
  }
}

这种方法适合需要执行更复杂逻辑的场景。

vue实现input值相加

标签: vueinput
分享给朋友:

相关文章

vue实现效果

vue实现效果

以下是Vue实现常见效果的几种典型方法,分为不同场景说明: 数据绑定与响应式更新 使用v-model实现表单双向绑定: <template> <input v-model…

vue实现modal

vue实现modal

Vue 实现 Modal 弹窗组件 使用 Vue 实现 Modal 弹窗组件可以通过多种方式,包括原生 Vue 组件、第三方库或自定义指令。以下是几种常见方法: 原生 Vue 组件实现 创建一个基础…

vue实现vnc

vue实现vnc

Vue 实现 VNC 客户端 在 Vue 项目中实现 VNC 客户端功能,可以通过集成现有的 VNC 客户端库或组件完成。以下是具体实现方法: 安装依赖库 使用 noVNC 或其他 VNC 客…

vue实现必填

vue实现必填

Vue 实现表单必填验证的方法 在Vue中实现表单必填验证可以通过多种方式完成,以下是几种常见的方法: 使用HTML5原生属性 最简单的必填验证可以通过HTML5的required属性实现:…

vue实现定时

vue实现定时

Vue 实现定时功能的方法 使用 setInterval 和 clearInterval 在 Vue 中可以通过 setInterval 和 clearInterval 实现定时功能。在组件的 mou…

vue实现swipe

vue实现swipe

Vue实现Swipe功能的方法 使用第三方库(推荐) Vue生态中有多个成熟的轮播/滑动组件库,例如vue-awesome-swiper或swiper/vue。以下是基于swiper/vue的实现示例…