vue学习路线(11.watch对比computed)

一、通过案例对比computedwatch

姓名案例(输入框分别输入姓和名,全名展示姓名的组合)

1.通过computed实现

xml 复制代码
  <body>
    <div id="app">
      姓:<input v-model="firstName" /><br /><br />
      名:<input v-model="lastName" /><br /><br />
      全名:<span>{{fullName}} </span>
    </div>
    <script type="text/javascript">
      const vm = new Vue({
        el: "#app",
        data() {
          return {
            firstName: "张",
            lastName: "三",
          };
        },
        computed: {
          fullName() {
            return this.firstName + "-" + this.lastName;
          },
        },
      });
    </script>
  </body>

2.通过watch实现

xml 复制代码
  <body>
    <div id="app">
      姓:<input v-model="firstName" /><br /><br />
      名:<input v-model="lastName" /><br /><br />
      全名:<span>{{fullName}} </span>
    </div>
    <script type="text/javascript">
      const vm = new Vue({
        el: "#app",
        data() {
          return {
            firstName: "张",
            lastName: "三",
            fullName: "",
          };
        },
        watch: {
          firstName(val) {
            this.fullName = val + "-" + this.lastName;
          },
          lastName(val) {
            this.fullName = this.firstName + "-" + val;
          },
        },
      });
    </script>
  </body>

二、总结computedwatch之间的区别

    1. computed能完成的功能,watch都可以完成。
    1. watch能完成的功能,computed不一定能完成,例如:watch可以进行异步操作。

三、两个重要的小原则

    1. 所被Vue管理的函数,最好写成普通函数,这样this的指向才是vm 或 组件实例对象。
    1. 所有不被vue所管理的函数 (定时器的回调函数、ajax的回调函数、Promise的回调函数等) ,最好写成箭头函数。这样this的指向才是vm或组件实例对象。
相关推荐
yuhaiqiang5 分钟前
被 AI 忽悠后,开始怀念搜索引擎了?
前端·后端·面试
红色石头本尊22 分钟前
1-umi-前端工程化搭建
前端
真夜28 分钟前
关于对echart盒子设置百分比读取的宽高没有撑开盒子解决方案
前端
楠木68542 分钟前
RAG 资料库 Demo 完整开发流程
前端·ai编程
肠胃炎1 小时前
挂载方式部署项目
服务器·前端·nginx
像我这样帅的人丶你还1 小时前
使用 Next.js + Prisma + MySQL 开发全栈项目
前端
FPGA小迷弟1 小时前
FPGA 时序约束基础:从时钟定义到输入输出延迟的完整设置
前端·学习·fpga开发·verilog·fpga
毛骗导演1 小时前
@tencent-weixin/openclaw-weixin 插件深度解析(四):API 协议与数据流设计
前端·架构
毛骗导演1 小时前
@tencent-weixin/openclaw-weixin 插件深度解析(二):消息处理系统架构
前端·架构
IT_陈寒2 小时前
深入理解JavaScript:核心原理与最佳实践
前端·人工智能·后端