AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

Vue3 新玩法!我能操控計算屬性 Computed!

來源: 責編: 時間:2024-05-27 08:52:59 129觀看
導讀背景最近在做一個需求的時候,用到了一個 Vue3 內置的 API,發現真的非常實用,分享給大家。需求是這樣的,我有一個變量 sum,是通過computed去計算的,且 sum 依賴的變量有的是響應式的,有的不是響應式的,所以會造成以下的后果,當

背景

最近在做一個需求的時候,用到了一個 Vue3 內置的 API,發現真的非常實用,分享給大家。Ny328資訊網——每日最新資訊28at.com

需求是這樣的,我有一個變量 sum,是通過computed去計算的,且 sum 依賴的變量有的是響應式的,有的不是響應式的,所以會造成以下的后果,當非響應式變量改變時,并不會觸發sum 的響應式更新,只有響應式變量改變時才會觸發sum的響應式更新。Ny328資訊網——每日最新資訊28at.com

圖片圖片Ny328資訊網——每日最新資訊28at.com

所以我需要用到一個 Vue3 的內置 API,它就是customRef。Ny328資訊網——每日最新資訊28at.com

customRef

創建一個自定義的 ref,顯式聲明對其依賴追蹤和更新觸發的控制方式。Ny328資訊網——每日最新資訊28at.com

類型

圖片圖片Ny328資訊網——每日最新資訊28at.com

詳細信息

customRef() 預期接收一個工廠函數作為參數,這個工廠函數接受 track 和 trigger 兩個函數作為參數,并返回一個帶有 get 和 set 方法的對象。Ny328資訊網——每日最新資訊28at.com

一般來說,track() 應該在 get() 方法中調用,而 trigger() 應該在 set() 中調用。然而事實上,你對何時調用、是否應該調用他們有完全的控制權。Ny328資訊網——每日最新資訊28at.com

實踐小案例:防抖 Ref

創建一個防抖 ref,即只在最近一次 set 調用后的一段固定間隔后再調用:Ny328資訊網——每日最新資訊28at.com

圖片圖片Ny328資訊網——每日最新資訊28at.com

在組件中使用:Ny328資訊網——每日最新資訊28at.com

圖片圖片Ny328資訊網——每日最新資訊28at.com

可控的 computed

圖片圖片Ny328資訊網——每日最新資訊28at.com

再回到一開始的話題,我遇到的問題是:當非響應式變量改變時,并不會觸發sum 的響應式更新,只有響應式變量改變時才會觸發sum的響應式更新。Ny328資訊網——每日最新資訊28at.com

所以我們需要當非響應式變量count1、count2改變的時候,去手動觸發 computed 的計算,這樣才能更新 sum,但是 computed 返回的不是一個函數啊,我們要怎么去手動觸發計算呢?Ny328資訊網——每日最新資訊28at.com

所以這時候就需要一個可控的 computed,它擁有以下功能:Ny328資訊網——每日最新資訊28at.com

1、能根據響應式變量去自動觸發計算更新Ny328資訊網——每日最新資訊28at.com

2、提供一個方法讓用戶手動去調用觸發更新Ny328資訊網——每日最新資訊28at.com

期望使用方式是這樣的:Ny328資訊網——每日最新資訊28at.com

圖片圖片Ny328資訊網——每日最新資訊28at.com

具體的代碼實現如下:Ny328資訊網——每日最新資訊28at.com

圖片 圖片 Ny328資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-90851-0.htmlVue3 新玩法!我能操控計算屬性 Computed!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 智啟未來、共創錫望 —— 巴可 (Barco) 無錫開業典禮盛大舉行

下一篇: 再探泛型 API,感受 Python 對象的設計哲學

標簽:
  • 熱門焦點
Top