欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue3 reactive函數(shù)用法實(shí)戰(zhàn)教程

 更新時間:2022年11月11日 11:43:32   作者:wuxing164  
reactive是Vue3中提供實(shí)現(xiàn)響應(yīng)式數(shù)據(jù)的方法,reactive的用法與ref的用法相似,也是將數(shù)據(jù)變成響應(yīng)式數(shù)據(jù),當(dāng)數(shù)據(jù)發(fā)生變化時UI也會自動更新,這篇文章主要介紹了vue3 reactive函數(shù)用法,需要的朋友可以參考下

vue3 reactive函數(shù)用法

reactive的用法與ref的用法相似,也是將數(shù)據(jù)變成響應(yīng)式數(shù)據(jù),當(dāng)數(shù)據(jù)發(fā)生變化時UI也會自動更新。不同的是ref用于基本數(shù)據(jù)類型,而reactive是用于復(fù)雜數(shù)據(jù)類型,比如對象和數(shù)組
例如:定義一個對象類型的變量user

<template>
  <div>
    <p>{{ user }}</p>
    <button @click="increase">click me! one year later</button>
  </div>
</template>
 
<script>
import { reactive } from "vue";
export default {
  name: "reactive",
  setup() {
    const user = reactive({ name: "Alice", age: 12 });
    function increase() {
      ++user.age
    }
    return { user, increase };
  },
};
</script>

如上,當(dāng)點(diǎn)擊按鈕時,讓數(shù)據(jù)user.age加1,當(dāng)Vue發(fā)現(xiàn)數(shù)據(jù)發(fā)生變化,UI會自動更新
那我們驗證了,確實(shí)reactive函數(shù)可以將一個復(fù)雜數(shù)據(jù)類型變成響應(yīng)式數(shù)據(jù)。我們不妨將reactive函數(shù)執(zhí)行的結(jié)果打印出來看下,看看它返回值是什么
reactive將傳遞的對象包裝成了proxy對象

我們發(fā)現(xiàn),reactive執(zhí)行結(jié)果是將傳遞的對象包裝成了proxy對象
接下來我們測試一下,如果傳遞基本數(shù)據(jù)類型呢?

<template>
  <div>
    <p>{{ userAge }}</p>
    <button @click="increase">click me! one year later</button>
  </div>
</template>
 
<script>
import { reactive } from "vue";
export default {
  name: "reactive",
  setup() {
    let userAge = reactive(12);
    function increase() {
      console.log(userAge);
      ++userAge;
    }
    return { userAge, increase };
  },
};
</script>

運(yùn)行發(fā)現(xiàn),基本數(shù)據(jù)傳遞給reactive,reactive并不會將它包裝成porxy對象,并且當(dāng)數(shù)據(jù)變化時,界面也不會變化

需要注意的是,reactive中傳遞的參數(shù)必須是json對象或者數(shù)組,如果傳遞了其他對象(比如new Date()),在默認(rèn)情況下修改對象,界面不會自動更新,如果也需要具有響應(yīng)式,可以通過重新賦值的方式實(shí)現(xiàn)

使用ref函數(shù)可以處理基本數(shù)據(jù),使期變成響應(yīng)式數(shù)據(jù)

Vue3中reactive的理解

1.什么是reactive?

  • reactive是Vue3中提供實(shí)現(xiàn)響應(yīng)式數(shù)據(jù)的方法.
  • 在Vue2中響應(yīng)式數(shù)據(jù)是通過defineProperty來實(shí)現(xiàn)的.
  • 而在Vue3響應(yīng)式數(shù)據(jù)是通過ES6的Proxy來實(shí)現(xiàn)的

2.reactive注意點(diǎn)

  • reactive參數(shù)必須是對象(json/arr)
  • 如果給reactive傳遞了其他對象,默認(rèn)情況下修改對象,界面不會自動更新,如果想更新,可以通過重新賦值的方式.

錯誤示范

當(dāng)傳遞的是非對象時,頁面不會發(fā)生響應(yīng)

在這里插入圖片描述

正確實(shí)例

在這里插入圖片描述

arr正確實(shí)例

傳入數(shù)組會轉(zhuǎn)成proxy對象

在這里插入圖片描述

到此這篇關(guān)于vue3 reactive函數(shù)用法的文章就介紹到這了,更多相關(guān)vue3 reactive函數(shù)用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue3?element-plus實(shí)現(xiàn)圖片預(yù)覽功能實(shí)例

    vue3?element-plus實(shí)現(xiàn)圖片預(yù)覽功能實(shí)例

    這篇文章主要給大家介紹了關(guān)于vue3?element-plus實(shí)現(xiàn)圖片預(yù)覽功能的相關(guān)資料,在項目中我們經(jīng)常會碰到圖片預(yù)覽的功能需求,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • vue?內(nèi)置組件?component?的用法示例詳解

    vue?內(nèi)置組件?component?的用法示例詳解

    這篇文章主要介紹了vue內(nèi)置組件component的用法,本文給大家介紹了component內(nèi)置組件切換方法,通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08
  • vue預(yù)覽 pdf、word、xls、ppt、txt文件的實(shí)現(xiàn)方法

    vue預(yù)覽 pdf、word、xls、ppt、txt文件的實(shí)現(xiàn)方法

    這篇文章主要介紹了vue預(yù)覽 pdf、word、xls、ppt、txt文件的實(shí)現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue中播放rtsp流的方法實(shí)例詳解

    vue中播放rtsp流的方法實(shí)例詳解

    最近有個需求是前端在瀏覽器顯示攝像頭傳回的RTSP視頻流,下面這篇文章主要給大家介紹了關(guān)于vue中播放rtsp流的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • Slots Emit和Props穿透組件封裝實(shí)現(xiàn)摸魚加鐘

    Slots Emit和Props穿透組件封裝實(shí)現(xiàn)摸魚加鐘

    這篇文章主要為大家介紹了Slots Emit和Props穿透組件封裝實(shí)現(xiàn)示例詳解,為摸魚加個鐘,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • 離線搭建vue環(huán)境運(yùn)行項目完整步驟

    離線搭建vue環(huán)境運(yùn)行項目完整步驟

    這篇文章主要給大家介紹了關(guān)于離線搭建vue環(huán)境運(yùn)行項目的相關(guān)資料,文中通過實(shí)例代碼以及圖文介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用vue具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2023-06-06
  • ?面試問題Vue雙向數(shù)據(jù)綁定原理

    ?面試問題Vue雙向數(shù)據(jù)綁定原理

    這篇文章主要介紹了?面試問題Vue雙向數(shù)據(jù)綁定原理,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Vue圖片懶加載之Vue-Lazyload的使用

    Vue圖片懶加載之Vue-Lazyload的使用

    懶加載就是延時加載,即當(dāng)需要用到的時候再去加載,本文主要介紹了Vue圖片懶加載之Vue-Lazyload的使用,具有一定的參考價值,感興趣的可以了解一下
    2024-05-05
  • vue中父子組件相互傳值的實(shí)現(xiàn)方法詳解

    vue中父子組件相互傳值的實(shí)現(xiàn)方法詳解

    父子組件通信是Vue中常見的場景,這篇文章主要為大家詳細(xì)介紹了vue中父子組件相互傳值的實(shí)現(xiàn)方法,文中的示例代碼講解詳細(xì),需要的小伙伴可以參考一下
    2023-12-12
  • Vue中插入HTML代碼的方法

    Vue中插入HTML代碼的方法

    這篇文章主要介紹了Vue中插入HTML代碼的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09

最新評論