成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Vue3 新玩法!我能操控計(jì)算屬性 Computed!

開(kāi)發(fā) 前端
需求是這樣的,我有一個(gè)變量 sum,是通過(guò)computed去計(jì)算的,且 sum 依賴的變量有的是響應(yīng)式的,有的不是響應(yīng)式的,所以會(huì)造成以下的后果,當(dāng)非響應(yīng)式變量改變時(shí),并不會(huì)觸發(fā)sum 的響應(yīng)式更新,只有響應(yīng)式變量改變時(shí)才會(huì)觸發(fā)sum的響應(yīng)式更新。

背景

最近在做一個(gè)需求的時(shí)候,用到了一個(gè) Vue3 內(nèi)置的 API,發(fā)現(xiàn)真的非常實(shí)用,分享給大家。

需求是這樣的,我有一個(gè)變量 sum,是通過(guò)computed去計(jì)算的,且 sum 依賴的變量有的是響應(yīng)式的,有的不是響應(yīng)式的,所以會(huì)造成以下的后果,當(dāng)非響應(yīng)式變量改變時(shí),并不會(huì)觸發(fā)sum 的響應(yīng)式更新,只有響應(yīng)式變量改變時(shí)才會(huì)觸發(fā)sum的響應(yīng)式更新。

圖片圖片

所以我需要用到一個(gè) Vue3 的內(nèi)置 API,它就是customRef。

customRef

創(chuàng)建一個(gè)自定義的 ref,顯式聲明對(duì)其依賴追蹤和更新觸發(fā)的控制方式。

類型

圖片圖片

詳細(xì)信息

customRef() 預(yù)期接收一個(gè)工廠函數(shù)作為參數(shù),這個(gè)工廠函數(shù)接受 track 和 trigger 兩個(gè)函數(shù)作為參數(shù),并返回一個(gè)帶有 get 和 set 方法的對(duì)象。

一般來(lái)說(shuō),track() 應(yīng)該在 get() 方法中調(diào)用,而 trigger() 應(yīng)該在 set() 中調(diào)用。然而事實(shí)上,你對(duì)何時(shí)調(diào)用、是否應(yīng)該調(diào)用他們有完全的控制權(quán)。

實(shí)踐小案例:防抖 Ref

創(chuàng)建一個(gè)防抖 ref,即只在最近一次 set 調(diào)用后的一段固定間隔后再調(diào)用:

圖片圖片

在組件中使用:

圖片圖片

可控的 computed

圖片圖片

再回到一開(kāi)始的話題,我遇到的問(wèn)題是:當(dāng)非響應(yīng)式變量改變時(shí),并不會(huì)觸發(fā)sum 的響應(yīng)式更新,只有響應(yīng)式變量改變時(shí)才會(huì)觸發(fā)sum的響應(yīng)式更新。

所以我們需要當(dāng)非響應(yīng)式變量count1、count2改變的時(shí)候,去手動(dòng)觸發(fā) computed 的計(jì)算,這樣才能更新 sum,但是 computed 返回的不是一個(gè)函數(shù)啊,我們要怎么去手動(dòng)觸發(fā)計(jì)算呢?

所以這時(shí)候就需要一個(gè)可控的 computed,它擁有以下功能:

1、能根據(jù)響應(yīng)式變量去自動(dòng)觸發(fā)計(jì)算更新

2、提供一個(gè)方法讓用戶手動(dòng)去調(diào)用觸發(fā)更新

期望使用方式是這樣的:

圖片圖片

具體的代碼實(shí)現(xiàn)如下:

圖片 圖片

責(zé)任編輯:武曉燕 來(lái)源: 前端之神
相關(guān)推薦

2023-12-11 07:34:37

Computed計(jì)算屬性Vue3

2022-07-14 08:22:48

Computedvue3

2022-06-26 00:00:02

Vue3響應(yīng)式系統(tǒng)

2021-12-08 09:09:33

Vue 3 Computed Vue2

2022-04-11 08:03:30

Vue.jscomputed計(jì)算屬性

2021-12-01 08:11:44

Vue3 插件Vue應(yīng)用

2024-09-05 08:50:11

2021-11-30 08:19:43

Vue3 插件Vue應(yīng)用

2023-11-28 09:03:59

Vue.jsJavaScript

2021-12-14 21:43:13

Vue3函數(shù)computed

2021-05-12 10:25:29

開(kāi)發(fā)技能代碼

2020-09-19 21:15:26

Composition

2025-06-12 09:18:22

2021-12-02 05:50:35

Vue3 插件Vue應(yīng)用

2024-08-23 08:45:04

響應(yīng)式Vue3API

2021-05-12 10:25:53

組件驗(yàn)證漏洞

2021-01-21 14:50:01

微信紅包移動(dòng)應(yīng)用

2025-01-06 09:14:54

HOCVue3render

2021-12-31 15:05:12

鴻蒙HarmonyOS應(yīng)用

2021-08-11 08:31:42

前端技術(shù)Vue3
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产在线一区二区三区 | 日日操日日干 | 99国产视频 | 97avcc| 一级免费看 | 一区二区三区四区电影 | av先锋资源 | av一级| 国产精品有限公司 | 午夜精品一区二区三区在线视频 | 亚洲色欲色欲www | 99re6热在线精品视频播放 | 国产视频不卡一区 | 香蕉久久久 | 四色永久 | 国产探花在线观看视频 | 成人免费观看视频 | 欧美日韩亚洲一区二区 | 国产色| 欧美在线色 | 激情五月综合 | 国产成人精品福利 | 久草视频在 | 午夜一区二区三区视频 | 成人免费大片黄在线播放 | 亚洲精品久久久久久久久久久 | 国产男女猛烈无遮掩视频免费网站 | 免费一级淫片aaa片毛片a级 | 天堂素人约啪 | 国产高清视频 | 亚洲精品久久久久久久久久久 | 天天操操 | 久久噜噜噜精品国产亚洲综合 | 欧产日产国产精品99 | 欧美日韩淫片 | 欧美在线| www.99热| 亚洲成av人影片在线观看 | 玖玖综合在线 | 日韩精品二区 | 亚洲第一福利网 |