当前位置: 首页 > news >正文

vue3动态绑定并通过按钮绑定事件 | 解决报错error ‘xxx‘ is not defined no-undef

以下代码报错:

<template>
    <div :class="inputBox">
      <input type="text" v-model="inputText" placeholder="填写任务" >
      {{ inputText }}
      <button @click="addTask">加任务</button>
    </div>
</template>
<script>
export default{
  methods:{
    addTask(){
      this.taskList.push({
        task:inputText,
        isCompleted:false,
      });
      inputText='';
    }
  },
  data(){
    return{
      inputText: ''
    }
  }
}
</script>

以上代码段,导致了报错:error ‘inputText’ is not defined no-undef

报错原因:

data方法作用域内的变量取值方式错误,应该改为这种方式:this.$data.inputText
当然也有其它方法:此处不赘述,可参考其它博文Vue3.0基础教程:data属性、计算属性、侦听器、Class与style绑定

优化后代码段:

<template>
  <div>
    <div :class="inputBox">
      <input type="text" v-model="inputText" placeholder="填写任务" >
      {{ inputText }}
      <button @click="addTask">加任务</button>
    </div>
  </div>
</template>
<script>
export default{
  methods:{
    addTask(){
      this.taskList.push({
        task:this.$data.inputText,  // 优化处
        isCompleted:false,
      });
      this.$data.inputText='';    // 优化处
    }
  },
  data(){
    return{
      inputText: '',
    }
  }
}
</script>

之后运行结果正确了

相关文章:

  • 第二章 EXI协议原理与实现--9 设计完整的EXI编解码库
  • NEW!睿本云接入抖音「会员通」!
  • OpenCV旋转估计(3)图像拼接类cv::detail::MultiBandBlender
  • Android RemoteViews:跨进程 UI 更新的奥秘与实践
  • C++类与对象的第二个简单的实战练习-3.24笔记
  • 2025年渗透测试面试题总结-某美团-安全工程师实习(题目+回答)
  • MVVM、MVC、MVP 的区别
  • Python前缀和(例题:异或和,求和)
  • python中的变量 - 第一章
  • Linux第一节:Linux系统编程入门指南
  • 【参考资料 II】C 运算符大全:算术、关系、赋值、逻辑、条件、指针、符号、成员、按位、混合运算符
  • ctfshow WEB web签到题
  • 五种IO模型
  • 【JavaEE】Mybatis XML配置文件实现增删改查
  • 编程从键盘输入一个大写英文字符,将其转换为小写字符显示并显示出它的十进制,十六的 ASCI码。
  • Kubernetes集群中部署SonarQube服务
  • Gitee上库常用git命令
  • Babel 从入门到精通(四):@babel/template的应用实例与最佳实践
  • 【JavaEE】springMVC返回Http响应
  • 【负载均衡系列】Nginx
  • 开局良好,我国第一季度广告业务收入保持较快增速
  • 前4个月我国货物贸易进出口同比增长2.4%,增速较一季度加快1.1个百分点
  • 牛市早报|国家发改委:今年将推出约3万亿元优质项目,支持民营企业参与
  • 水利部:山西、陕西等地旱情将持续
  • 外交部回应西班牙未来外交战略:愿与之一道继续深化开放合作
  • 中邮保险斥资8.69亿元举牌东航物流,持股比例达5%