东京热成人网站_XX另类XX伦理XXAV_亚洲精品无码成人AAA片_高清av中文字幕无码_手机看片国产欧美日韩高清_bd美妙第进化型

咨詢電話:
15628812133
17
2024/03

Vue3使用響應(yīng)式數(shù)據(jù)

發(fā)布時間:2024-03-17 21:43:25
發(fā)布者:·
瀏覽量:
0

    Vue2與vue3的不同之一setup(),setup可以說是vue3的靈魂所在,vue3把vue2的選項式api升級為了組合式api,能夠有效增加大項目代碼的代碼可讀性,但是和vue2自動把數(shù)據(jù)變?yōu)轫憫?yīng)式不同,vue3多了一步配置。

Vue3使用響應(yīng)式數(shù)據(jù)

Vue3使用響應(yīng)式數(shù)據(jù)    

    請大家看一個例子,我在setup中創(chuàng)建了一個名為name的數(shù)據(jù),他的值為張三,另外我還配置了一個方法,它的作用是修改name,并打印name的值。

    Vue3使用響應(yīng)式數(shù)據(jù)

    當我點擊時,可以看到,張三并沒有發(fā)生改變,但是console中打印出的name卻是李四,說明數(shù)據(jù)已經(jīng)改變了,但是頁面卻沒有發(fā)生改變。這里沒有發(fā)生改變的原因如下:

     因為name此時還不是響應(yīng)式數(shù)據(jù),如果是vue2中這里肯定已經(jīng)實現(xiàn)了,但這里是vue3,且this沒有了。大家可以看到我上邊的代碼中引入了一個叫做ref和reactive的東西,這兩個其實就是讓數(shù)據(jù)變?yōu)轫憫?yīng)式的關(guān)鍵,官方對他們這樣解釋。

Vue3使用響應(yīng)式數(shù)據(jù)

    Vue3使用響應(yīng)式數(shù)據(jù)

     

    下面我們修改一下代碼。

     Vue3使用響應(yīng)式數(shù)據(jù)

    Vue3使用響應(yīng)式數(shù)據(jù)

    可以看到,這次我們的name不單純是一個字符串而是變成了一個對象,并且頁面中張三已經(jīng)被改成李四了,大家請注意看我的代碼,因為ref讓原本的張三變成了一個對象,所以當我們想要修改name的值的時候,一定要加上.value才能正常修改。

    然后,我們再說一下reactive(),其實他與ref相似,不同的地方在于,reactive只能用來讓對象變成響應(yīng)式,并且,因為其響應(yīng)式化的本身就是對象,所以vue已經(jīng)幫我們?nèi)〉搅似浔旧淼闹担@里我們不用寫.value,但是如果用的是ref,還是需要.value。


    大體上說,ref可以用來定義基本類型數(shù)據(jù),而reactive則用來定義對象類型數(shù)據(jù),但在實際開發(fā)中,ref也可以定義對象類型數(shù)據(jù),ref會自動調(diào)用reactive方法來實現(xiàn)對象類型數(shù)據(jù)的響應(yīng)式。

Vue3使用響應(yīng)式數(shù)據(jù)

    另外,接下來還會為大家?guī)韛ue3的用戶代碼片段,vue2的可以點一下這里。

關(guān)鍵詞:
返回列表