国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

vue3中的ref 和 reactive 定義數(shù)組

這篇具有很好參考價值的文章主要介紹了vue3中的ref 和 reactive 定義數(shù)組。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

在vue3中,定義響應(yīng)式數(shù)據(jù)一般有兩種方式:ref 和 reactive

一般來說,我們使用 ref 來定義基本數(shù)據(jù)類型,使用 reactive 來定義復(fù)雜數(shù)據(jù)類型

但是也可以使用 ref 來定義數(shù)組

1、ref 定義數(shù)組

import { ref } from 'vue'

const arr = ref([])

兩種情況:定義時就將數(shù)組初始化、定義時未初始化數(shù)組

初始化數(shù)組

import { ref,watch } from 'vue'

const arr = ref([1,2,3])

watch(arr.value, () => { //這個時候通過直接修改和利用數(shù)組的方法修改都可以監(jiān)測到
  console.log('數(shù)組變化了')
})

const pushArray = () => {
  emptyArray.value.splice(0, 0, 19)
}

const changeArrayItem = () => {
  emptyArray.value[0] = 10
}

未初始化數(shù)組

import { ref,watch,onMounted } from 'vue'

const arr = ref([])

watch( //這個時候不能用.value且必須是深度監(jiān)聽,這種寫法不僅可以監(jiān)聽數(shù)組本身的變化,也可以監(jiān)聽 數(shù)組元素的變化
  arr,
  () => {
    console.log('空數(shù)組變化了')
  },
  {
    deep: true
  }
)
const pushArray = () => {
  arr.value.splice(0, 0, { value: 12 })
}
const changeArrayItem = () => {
  arr.value[0] = { value: 32 }
}
onMounted(() => {
  arr.value = [{ value: 5 }, { value: 2 }, { value: 3 }, { value: 4 }]
})

2、reactive 定義數(shù)組?

import { reactive } from 'vue';

let arr = reactive([])

function change(){
   let newArr = [1,2,3]
   arr = newArr
}

但是這樣定義的會出現(xiàn)問題,arr = newArr 這一步使得 arr 失去了響應(yīng)式的效果

解決方法:可以使用 ref 定義、使用 push 方法、數(shù)組外層嵌套一個對象文章來源地址http://www.zghlxwxcb.cn/news/detail-610586.html

import { reactive,ref } from 'vue';

let arr = reactive([])

function change(){
   let newArr = [1,2,3]
   arr = newArr
}


// 方法一:使用 ref
let arr = ref([])

function change(){
   let newArr = [1,2,3]
   arr.value = newArr
}


// 方法二:使用push 方法
let arr = reactive([])

function change(){
   let newArr = [1,2,3]
   arr.push(...newArr)
}

// 方法三:外層嵌套一個對象
let arr = reactive({list:[]})

function change(){
   let newArr = [1,2,3]
   arr.list = newArr
}

到了這里,關(guān)于vue3中的ref 和 reactive 定義數(shù)組的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • vue3中的reactive、ref、toRef和toRefs

    reactive用于創(chuàng)建響應(yīng)式對象,它返回一個對象的響應(yīng)式代理。即:它返回的對象以及其中嵌套的對象都會通過 Proxy 包裹;當(dāng)響應(yīng)式對象被訪問時,觸發(fā)getter方法;當(dāng)響應(yīng)式對象被修改時,觸發(fā)setter方法。在使用響應(yīng)式對象時,我們可以像普通對象一樣訪問和修改數(shù)據(jù)。 使用

    2024年02月08日
    瀏覽(23)
  • Vue3中的Ref與Reactive:深入理解響應(yīng)式編程

    Vue 3是一個功能強(qiáng)大的前端框架,它引入了一些令人興奮的新特性,其中最引人注目的是 ref 和 reactive 。這兩個API是Vue 3中響應(yīng)式編程的核心,本文將深入探討它們的用法和差異。 在Vue中,響應(yīng)式編程是一種使數(shù)據(jù)與UI保持同步的方式。當(dāng)數(shù)據(jù)變化時,UI會自動更新,反之亦然

    2024年02月08日
    瀏覽(31)
  • 【vue3】wacth監(jiān)聽,監(jiān)聽ref定義的數(shù)據(jù),監(jiān)聽reactive定義的數(shù)據(jù),詳解踩坑點

    【vue3】wacth監(jiān)聽,監(jiān)聽ref定義的數(shù)據(jù),監(jiān)聽reactive定義的數(shù)據(jù),詳解踩坑點

    假期第二篇,對于基礎(chǔ)的知識點,我感覺自己還是很薄弱的。 趁著假期,再去復(fù)習(xí)一遍 之前已經(jīng)記錄了一篇【vue3基礎(chǔ)知識點-computed和watch】 今天在學(xué)習(xí)的過程中發(fā)現(xiàn),之前記錄的這一篇果然是很基礎(chǔ)的,很多東西都講的不夠細(xì)致 話不多說,進(jìn)入正題: vue2中的watch寫法,(

    2024年02月07日
    瀏覽(18)
  • Vue3中的`ref`和`reactive使用中遇到的一些坑

    以下是一些常見的問題和解決方法: 同時使用 ref 和 reactive :在Vue3中, ref 和 reactive 是兩種不同的數(shù)據(jù)響應(yīng)方式。 ref 用于包裝基本類型數(shù)據(jù),而 reactive 用于包裝對象。如果在同一個變量上同時使用 ref 和 reactive ,可能會導(dǎo)致數(shù)據(jù)的不一致性和混亂。因此,應(yīng)該根據(jù)變量的

    2024年01月24日
    瀏覽(48)
  • Vue3通透教程【五】Vue3中的響應(yīng)式數(shù)據(jù) reactive函數(shù)、ref函數(shù)

    專欄介紹: 涼哥作為 Vue 的忠實粉絲輸出過大量的 Vue 文章,應(yīng)粉絲要求開始更新 Vue3 的相關(guān)技術(shù)文章,Vue 框架目前的地位大家應(yīng)該都曉得,所謂三大框架使用人數(shù)最多,公司選型最多的框架,涼哥之前在文章中也提到過就是 Vue 框架之所以火起來的原因,和 Vue 框架相比其他

    2024年01月24日
    瀏覽(27)
  • 【Vue學(xué)習(xí)筆記5】Vue3中的響應(yīng)式:ref和reactive、watchEffect和watch

    【Vue學(xué)習(xí)筆記5】Vue3中的響應(yīng)式:ref和reactive、watchEffect和watch

    所謂響應(yīng)式就是界面和數(shù)據(jù)同步,能實現(xiàn)實時更新。 Vue 中用過三種響應(yīng)式解決方案,分別是 defineProperty、Proxy 和 value setter。Vue 2 使用的方案是 defineProperty API。Vue3中使用的方案是Proxy和value setter。 vue3中實現(xiàn)響應(yīng)式數(shù)據(jù)的方法是使用ref和reactive。 reactive更推薦去定義復(fù)雜的數(shù)

    2024年02月03日
    瀏覽(33)
  • Web前端 ---- 【Vue3】computed計算屬性和watch偵聽屬性(偵聽被ref和reactive包裹的數(shù)據(jù))

    Web前端 ---- 【Vue3】computed計算屬性和watch偵聽屬性(偵聽被ref和reactive包裹的數(shù)據(jù))

    目錄 前言 computed watch watch偵聽ref數(shù)據(jù) ref簡單數(shù)據(jù)類型 ref復(fù)雜數(shù)據(jù)類型 watch偵聽reactive數(shù)據(jù) 本文介紹在vue3中的computed計算屬性和watch偵聽屬性。介紹watch如何偵聽被ref和reactive包裹的數(shù)據(jù) 在vue3中,計算屬性computed也是組合式api,也就是說要先引入,再在setup中使用 語法 完整:

    2024年01月18日
    瀏覽(46)
  • vue3 #ref #reactive

    一、ref 函數(shù)將簡單類型的數(shù)據(jù)包裝為響應(yīng)式數(shù)據(jù) import { ref?} from \\\'vue\\\'? const count = ref(10) 一、reactive函數(shù)將復(fù)雜類型的數(shù)據(jù)包裝為響應(yīng)式數(shù)據(jù) import { reactive} from \\\'vue\\\'? const obj= reactive({ ? ? name : \\\'zs\\\', ? ? age : 18 })

    2024年02月22日
    瀏覽(24)
  • Vue3 ref與reactive

    Vue3 ref與reactive

    在當(dāng)今Web開發(fā)領(lǐng)域中,構(gòu)建交互性強(qiáng)、可復(fù)用且易于維護(hù)的用戶界面是至關(guān)重要的。而Vue.js作為一款現(xiàn)代化且流行的JavaScript框架,正是為了滿足這些需求而誕生。它采用了MVVM架構(gòu)模式,并通過數(shù)據(jù)驅(qū)動和組件化的方式,使我們能夠更輕松地構(gòu)建出優(yōu)雅而高效的Web應(yīng)用程序。

    2024年01月24日
    瀏覽(19)
  • vue3 ref 和 reactive 區(qū)別

    最近學(xué)習(xí)cloud項目,前端使用到 vue3 + ts 等技術(shù),在寫需求過程中遇到 響應(yīng)式數(shù)據(jù)問題,經(jīng)百度查找相關(guān)筆記 ,在此記錄一下,在實戰(zhàn)中成長吧。 出現(xiàn)的問題 : 定義一個默認(rèn)數(shù)組并且 for 循環(huán)展示,后端返回數(shù)據(jù)并且賦值到數(shù)組中,但是展示的值并不會修改 原因 : 在 js 中

    2023年04月09日
    瀏覽(61)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包