最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Vue3中customRef的使用

2022-03-13 11:03 作者:忘魂兒  | 我要投稿

如其名,自定義Ref,可想而知它一定會返回一個Ref對象,那么開始吧

這里我們先定義這么一個函數(shù),里面封裝的是我們自己定義的ref

模板中

頁面上

上圖所示,我們能讀取,但是真能改變值嗎?

答案是不能!有人就會說了,我明明把最新的值給value賦值了啊,咋能夠呢?

這么說吧,你呢確實賦值了,但是get沒有重新執(zhí)行,模板呢還是未修改之前的模板,也就是說你沒有通知Vue去重新渲染模板

那么如何通知Vue去重新解析模板呢?

customRef中的回調(diào)會接收底層的兩個參數(shù),一個是track,也就是追蹤,你說它追蹤什么呢?欸,追蹤的就是get返回值的改變,它追蹤到了才會反應(yīng)到頁面上來,另一個是trigger,也就是觸發(fā),觸發(fā)啥?觸發(fā)開關(guān),開關(guān)干嘛的?通知Vue去重新解析模板

問題來了,這兩個參數(shù)啥前用?你想啊,當(dāng)你的值改變完之后是不是得通知Vue去重新解析模板?重新解析完模板之后是不是會重新調(diào)用get讀取值?那么讀取返回值之前是不是得先追蹤到變化?好了,代碼上見!

結(jié)果如下:最終拿到這個改變后的值了

有人又說了,這有啥用?我直接用官方給的ref不香嗎?

那咱們做個實驗,你說我要是一直往輸入框中輸入東西,會發(fā)生什么呢?

好家伙,好么,這得耗多少資源,一次輸入就響應(yīng)一次,當(dāng)真看恐怖??!

問題來了,如何解決?

有人就說,你咋啷個笨?你就開個定時器不就可以了?

喲呵,變異了,錯的離譜了,差點定時器開關(guān)

加上定時器開關(guān)

模板中

頁面上,觸發(fā)頁面更新的時機(jī)變成了,連續(xù)按鍵停止點后的500ms

但是有點不足,延遲時間寫死了,改需求

完事!這就是防抖!

Vue3中customRef的使用的評論 (共 條)

分享到微博請遵守國家法律
子长县| 济阳县| 涪陵区| 平乡县| 甘德县| 郴州市| 无为县| 北流市| 五台县| 福安市| 榕江县| 隆回县| 襄垣县| 普陀区| 遵义市| 莲花县| 靖江市| 白河县| 刚察县| 简阳市| 三台县| 峨边| 遂宁市| 万安县| 勐海县| 鄂托克旗| 大足县| 吴堡县| 阳山县| 大新县| 邵阳县| 太谷县| 兖州市| 永兴县| 秦皇岛市| 库车县| 普陀区| 巧家县| 苍溪县| 河津市| 呼图壁县|