最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

對Vue3中reactive的深入理解

 更新時間:2022年05月25日 08:57:44   作者:山竹回家了  
這篇文章主要介紹了對Vue3中reactive的深入理解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Vue3 reactive的理解

1.什么是reactive?

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

2.reactive注意點

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

錯誤示范

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

在這里插入圖片描述

正確實例

在這里插入圖片描述

arr正確實例

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

在這里插入圖片描述

Vue3筆記 reactive函數(shù)

  • 作用:定義一個對象類型的響應(yīng)式數(shù)據(jù)(基本類型不要用它,要用ref函數(shù))
  • 語法:const 代理對象= reactive(源對象)接收一個對象(或數(shù)組),返回一個代理對象(Proxy的實例對象,簡稱proxy對象)

reactive定義的響應(yīng)式數(shù)據(jù)是“深層次的”。

內(nèi)部基于 ES6 的 Proxy 實現(xiàn),通過代理對象操作源對象內(nèi)部數(shù)據(jù)進行操作。

<template>
? <img alt="Vue logo" src="./assets/logo.png" />
? <h1>一個人的信息</h1>
? <h1>年齡:{{ p.age }}</h1>
? <h1>姓名:{{ p.name }}</h1>
? <h1>工作種類: {{ p.job.type }}</h1>
? <h1>工作薪水: {{ p.job.salary }}</h1>
? <h1>愛好: {{ hobby }}</h1>
? <h1>測試的數(shù)據(jù): {{ p.a.b.c }}</h1>
? <button @click="changeInfo">修改人的信息</button>
</template>
<script>
import HelloWorld from "./components/HelloWorld.vue";
import { ref, reactive } from "vue";
export default {
? name: "App",
? components: {
? ? HelloWorld,
? },
? setup() {
? ? let hobby = reactive(["抽煙", "喝酒", "打麻將"]);
? ? // 數(shù)據(jù)
? ? let p = reactive({
? ? ? name: "張三",
? ? ? age: 19,
? ? ? job: {
? ? ? ? type: "前端工程師",
? ? ? ? salary: "20k",
? ? ? },
? ? ? a: {
? ? ? ? b: {
? ? ? ? ? c: 666666,
? ? ? ? },
? ? ? },
? ? ? hobby: ["抽煙", "喝酒", "打麻將"],
? ? });

? ? // 方法
? ? function changeInfo() {
? ? ? console.log(p.job);
? ? ? p.name = "李四";
? ? ? p.age = 119;
? ? ? p.job.salary = "69k";
? ? ? p.job.type = "算法工程師";
? ? ? p.hobby[0] = "學(xué)習(xí)";
? ? ? hobby[0] = "學(xué)習(xí)算法";
? ? }
? ? return {
? ? ? p,
? ? ? hobby,
? ? ? changeInfo,
? ? };
? },
};
</script>

總結(jié)一下:

  • reactive主要是用來操作對象或數(shù)組,定義為響應(yīng)式數(shù)據(jù)
  • 增刪改查都可以操作。
  • 內(nèi)部是通過Proxy代理的形式

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

沙河市| 安顺市| 侯马市| 庆城县| 云南省| 抚州市| 常德市| 武功县| 温宿县| 科技| 门源| 灵武市| 那曲县| 安塞县| 察隅县| 古丈县| 明水县| 云林县| 玛纳斯县| 韩城市| 拉孜县| 波密县| 竹溪县| 靖江市| 文昌市| 唐海县| 武宣县| 方山县| 泸州市| 阜康市| 资溪县| 宜州市| 定州市| 桐梓县| 柳林县| 安化县| 巩留县| 娄烦县| 嘉善县| 松溪县| 昭平县|