1、相同點
useDeferredValue 本質上和內部實現與 useTransition 一樣都是把任務標記成了過渡更新任務。
2、不同點
useTransition 是把 startTransition 內部的更新任務變成了過渡任務transtion,而 useDeferredValue 是把原值通過過渡任務得到新的值,這個值作為延時狀態。 也就是說一個是處理一段邏輯,另一個是生產一個新的狀態。
useDeferredValue 還有一個不同點就是這個任務,本質上在 useEffect 內部執行,而 useEffect 內部邏輯是異步執行的 ,所以它一定程度上更滯后于 useTransition。可以理解成useDeferredValue = useEffect + transtion