watchEffect

2021-04-19  本文已影响0人  唐吉柯德

功能和watch大致相当区别是

<template>
  <div class="page-wrapper">
    <p>-------------------------------shallowReactive--------------------------</p>
    <p>{{stuAge}}</p>
    <button @click="myFn">点我一下</button>
  </div>
</template>
<script lang="js">
import { defineComponent, ref, watchEffect } from 'vue';
export default defineComponent({
  name: 'effect-test',
  setup(){
    let stuAge= ref(0);
    function myFn(){
        stuAge.value++;
    }
    const stop= watchEffect(onInvalidate => {
        console.log('effect enter', stuAge.value);

        //处理watchEffect频繁调用的逻辑
        onInvalidate(()=> {
            console.log('onInvalidate enter');
        })
        if(stuAge.value === 3){
            stop();
        }
    })
    return {
        stuAge,
        myFn
    }
  }
  
})
</script>
上一篇 下一篇

猜你喜欢

热点阅读