返回

vue3较vue2的特别之处 - watch/watchEffect

发布时间:2022-09-30 15:37:57 318

区别:

  • watch可以查看旧值, watchEffect不可以。
  • watch只有属性改变才执行, watchEffect初始执行一次,属性改变再执行。
  • watch要指定属性, watchEffect不需要。
  • watch不可以停止监听, watchEffect可以。
  • watch多次触发多次执行(不能节流), watchEffect可以。

示例:

 

 

 

vue3较vue2的特别之处 - watch/watchEffect_ecmascript

 

示例代码:

<template>
  <div>count: {{ count }}</div>
  <button @click="clickPlus">加号123</button>
</template>
<script lang="ts">
import {
  computed,
  defineComponent,
  onBeforeMount,
  onUpdated,
  ref,
  watch,
  watchEffect,
} from "vue";
export default defineComponent({
  setup() {
    console.log('初始化开始');
    
    const count = ref(0);
    const clickPlus = () => {
      count.value++;
    };
    watch(
      () => count.value,
      (newValue, oldValue) => {
        console.log("watch: newValue: " + newValue + ', oldValue: ' + oldValue);
      }
    );
// sotp可以用来停止监听
    const stop = watchEffect(() => {
      console.log("watchEffect: " + count.value);
    });
    onUpdated(() => { console.log('updated'); });
    return {
      count,
      clickPlus,
    };
  },
  data() {return {}},
  methods: {},
});
</script>
<style scoped></style>

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
HTML&amp;CSS精选笔记_HTML入门 2022-09-30 15:04:49