通过添加一个条件判断来实现,当if语句成立时,不执行watch函数。修改后的代码如下:

if (unref(isUpdate)) {
  const receive = data?.record;
  Object.assign(planModel, receive);
  if (planModel.checkDate != null) {
    planModel.checkDate = dayjs(planModel.checkDate);
  }
  planModel.totalScore = parseInt(planModel.totalScore);
} else {
  watch(() => planModel.eatScore, (newVal, oldVal) => {
    planModel.totalScore += newVal - oldVal;
  });
  watch(() => planModel.washScore, (newVal, oldVal) => {
    planModel.totalScore += newVal - oldVal;
  });
  watch(() => planModel.wearScore, (newVal, oldVal) => {
    planModel.totalScore += newVal - oldVal;
  });
  watch(() => planModel.toiletScore, (newVal, oldVal) => {
    planModel.totalScore += newVal - oldVal;
  });
  watch(() => planModel.moveScore, (newVal, oldVal) => {
    planModel.totalScore += newVal - oldVal;
  });
}

这样,当if语句成立时,watch函数不会被执行。


原文地址: https://www.cveoy.top/t/topic/pKVB 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录