customRef:創(chuàng)建一個(gè)自定義的 ref,并對其依賴項(xiàng)跟蹤和更新觸發(fā)進(jìn)行顯式控制嚼摩。
思路:要寫一個(gè)節(jié)流的ref(自定義一個(gè)ref)钦讳,可根據(jù)customRef api重寫一個(gè)自己的ref,我們需要通過customRef?跟蹤依賴并在合適的時(shí)候觸發(fā)更新枕面。?
引入customRef愿卒,自定義一個(gè)函數(shù),該函數(shù)需要接收到value潮秘,函數(shù)的返回值是返回一個(gè)我們自定義的customRef琼开,將兩個(gè)參數(shù)傳入customRef,并在customRef函數(shù)中返回我們重寫的邏輯(getter枕荞,setter柜候,vue在處理的時(shí)候,會用get讀取value躏精,在value改變時(shí)調(diào)用set)渣刷。在getter函數(shù)中收集依賴,在setter中矗烛,定義一個(gè)定時(shí)器辅柴,使value更改、更新視圖的時(shí)間往后高诺,且需要在delay沒到但還在更改value的時(shí)候碌识,clear調(diào)之前的定時(shí)器碾篡,實(shí)現(xiàn)簡單的節(jié)流虱而。
引入自定義的ref,并使用开泽,傳入value和delay牡拇,雙向綁定至input。
效果:簡書傳gif圖動不了穆律,只能截圖看看效果了: