第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Vuex:僅當(dāng)存儲(chǔ)屬性存在時(shí)每 2 秒調(diào)度一個(gè)函數(shù)?

Vuex:僅當(dāng)存儲(chǔ)屬性存在時(shí)每 2 秒調(diào)度一個(gè)函數(shù)?

慕娘9325324 2023-03-24 14:09:48
我正在嘗試運(yùn)行一個(gè)函數(shù),該函數(shù)發(fā)出 GET 請求以更新產(chǎn)品數(shù)量,但僅當(dāng)商店currentProduct屬性存在時(shí)。如果沒有選定的產(chǎn)品,那么我不想讓間隔無緣無故地觸發(fā)一個(gè)功能。在偽代碼中,我基本上是說:如果 $this.store.getters['myStore/getCurrentProduct']那么 setInterval(this.$store.dispatch('updateQuantity'), 2000);我唯一的想法是為 currentProduct 創(chuàng)建一個(gè)計(jì)算屬性:computed: {     currentProd() {         return $this.store.getters['myStore/getCurrentProduct'];     }}然后看它:watch: {     currentProd(newVal,oldVal) {          if (newVal != null) {              let foo = setInterval(this.$store.dispatch('updateQuantity'), 2000);          }     } }我只是不確定如何防止它重疊并且有大量的間隔觸發(fā)
查看完整描述

1 回答

?
冉冉說

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊

您應(yīng)該將間隔對象存儲(chǔ)在一個(gè)地方,以便您可以輕松地重置它,而不是在每次觀察程序運(yùn)行時(shí)在函數(shù)中創(chuàng)建一個(gè)新的本地間隔:


data () {

  return {

    productCheckInterval: null

  }

},

watch: {

  currentProd (newVal, oldVal) {

    clearInterval(this.productCheckInterval)

    if (newVal !== null) {

      this.productCheckInterval = setInterval(() => {

        this.$store.dispatch('updateQuantity')

      }, 2000)

    }

  } 

}


查看完整回答
反對 回復(fù) 2023-03-24
  • 1 回答
  • 0 關(guān)注
  • 107 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號