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

vue3如何定義變量及ref、reactive、toRefs特性說明

 更新時間:2022年06月28日 15:14:54   作者:倘若hfl  
這篇文章主要介紹了vue3如何定義變量及ref、reactive、toRefs特性說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

vue3定義變量及ref、reactive、toRefs特性

1.ref() 函數(shù)

ref() 函數(shù)用來根據(jù)給定的值創(chuàng)建一個響應(yīng)式的數(shù)據(jù)對象,傳入的為基本數(shù)據(jù)類型,例如字符串、數(shù)字、boolean 等,返回值是一個對象,這個對象上只包含一個 value 屬性

ref定義的變量,改變值要.value,而且在template中不用寫.value

<div>{{msg}}</div>
<button @click="changeMsg()">修改msg</button>
import {reactive,ref,toRefs} from 'vue'
setup() {
?? ?//定義
? ? const msg = ref('你好')?
? ? //修改
? ? const changeMsg =()=>{
? ? ? msg.value ='msg被改了'
? ? }
? ? //導(dǎo)出
? ? return {?
? ? ?msg,
? ? ?changeMsg
? ? }
? }

2.reactive() 函數(shù)

reactive函數(shù)傳入的為引用類型,例如數(shù)組、對象等,但不能代理基本類型值,返回一個響應(yīng)式的數(shù)據(jù)對象, 想要使用創(chuàng)建的響應(yīng)式數(shù)據(jù)也很簡單,創(chuàng)建出來之后,在setup中return出去,直接在template中調(diào)用即可。

<div>{{state.msg}}</div>
<button @click="changeMsg()">修改msg</button>
import { reactive, ref, toRefs } from 'vue'
? ? ? ? setup() {
? ? ? ? ? ? //定義
? ? ? ? ? ? const state = reactive({
? ? ? ? ? ? ? ? msg: '你好',
? ? ? ? ? ? ? ? msg2:'hello'
? ? ? ? ? ? })
? ? ? ? ? ? //修改
? ? ? ? ? ? const changeMsg = () => {
? ? ? ? ? ? ? ? state.msg = 'msg被改了'
? ? ? ? ? ? }
? ? ? ? ? ? //導(dǎo)出
? ? ? ? ? ? return {
? ? ? ? ? ? ? ? state,
? ? ? ? ? ? ? ? changeMsg
? ? ? ? ? ? }
? ? ? ? }

3.toRefs() 函數(shù)

toRefs() 函數(shù)可以將 reactive() 創(chuàng)建出來的響應(yīng)式對象,轉(zhuǎn)換為普通的對象,相當(dāng)于變成一個個的ref(),類似使用拓展用算符…的方法返回數(shù)據(jù)data

使用toRefs和reactive()區(qū)別在于可以直接使用msg屬性,不用state.

<div>{{msg}}</div>
<button @click="changeMsg()">修改msg</button>
import { reactive, ref, toRefs } from 'vue'
? ? ? ? setup() {
? ? ? ? ? ? //定義
? ? ? ? ? ? const state = reactive({
? ? ? ? ? ? ? ? msg: '你好',
? ? ? ? ? ? ? ? msg2:'hello'
? ? ? ? ? ? })
? ? ? ? ? ? //修改
? ? ? ? ? ? const changeMsg = () => {
? ? ? ? ? ? ? ? state.msg = 'msg被改了'
? ? ? ? ? ? }
? ? ? ? ? ? //導(dǎo)出
? ? ? ? ? ? return {
? ? ? ? ? ? ? ?...toRefs(state),
? ? ? ? ? ? ? ? changeMsg
? ? ? ? ? ? }
? ? ? ? }

vue3定義變量

1.const 聲明變量

特性:聲明為一個常量,不能被修改,不可以再次賦值,它的指向是不可以改變的,只能指向某處固定區(qū)域,不能再指向其它地方

要求:

① 聲明后必須初始化賦值,如:const name='aaa',不可以 const name;           

② 常量的含義是指向的對象不能修改,但是可以修改對象中的屬性

所以類似const userName = ref('張三')

userName.value = '李四'

實際上是在給對象userName的屬性重新賦值

2.reactive和ref

都是用作定義基本變量的

ref 定義簡單的,reactive一般定義數(shù)組和對象

ref 有.value屬性,reactive沒有

3.provide與inject

不用再一層一層的傳遞數(shù)據(jù)

provide可以向所有子孫組件提供數(shù)據(jù)以及提供修改數(shù)據(jù)的方法,子孫組件用inject使用數(shù)據(jù)。 

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

相關(guān)文章

  • 如何以拖拽方式生成Vue用戶界面

    如何以拖拽方式生成Vue用戶界面

    這篇文章主要給大家介紹了關(guān)于如何以拖拽方式生成Vue用戶界面的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Vue3新屬性之css中使用v-bind的方法(v-bind?in?css)

    Vue3新屬性之css中使用v-bind的方法(v-bind?in?css)

    這篇文章主要介紹了Vue3新屬性css中使用v-bind(v-bind?in?css)的方法,本文結(jié)合實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-01-01
  • 解決Antd 里面的select 選擇框聯(lián)動觸發(fā)的問題

    解決Antd 里面的select 選擇框聯(lián)動觸發(fā)的問題

    這篇文章主要介紹了解決Antd 里面的select 選擇框聯(lián)動觸發(fā)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • Vue新玩具VueUse的具體用法

    Vue新玩具VueUse的具體用法

    VueUse 是一個基于 Composition API 的實用函數(shù)集合。本文就詳細(xì)的介紹了VueUse的具體用法,具有一定的參考價值,感興趣的可以了解一下
    2021-11-11
  • vue cli3.0 引入eslint 結(jié)合vscode使用

    vue cli3.0 引入eslint 結(jié)合vscode使用

    這篇文章主要介紹了vue cli3.0 引入eslint 結(jié)合vscode使用,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-05-05
  • vue2前端使用axios發(fā)起post請求后端(springboot)接收不到值解決辦法

    vue2前端使用axios發(fā)起post請求后端(springboot)接收不到值解決辦法

    這篇文章主要介紹了vue2前端使用axios發(fā)起post請求后端(springboot)接收不到值解決辦法,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-03-03
  • vue-element-admin中node-sass換成dart-sass,安裝依賴報code?128多種問題的解決方法

    vue-element-admin中node-sass換成dart-sass,安裝依賴報code?128多種問題的解決

    這篇文章主要介紹了vue-element-admin中node-sass換成dart-sass,安裝依賴報code?128多種問題的解決方法,本文給大家分享問題原因分析及解決方法,需要的朋友可以參考下
    2023-02-02
  • vue.js實現(xiàn)只能輸入數(shù)字的輸入框

    vue.js實現(xiàn)只能輸入數(shù)字的輸入框

    這篇文章主要為大家詳細(xì)介紹了vue.js實現(xiàn)只能輸入數(shù)字的輸入框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • 利用vue.js插入dom節(jié)點的方法

    利用vue.js插入dom節(jié)點的方法

    這篇文章主要介紹了利用vue.js插入dom節(jié)點的相關(guān)資料,文中介紹的非常,對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • Vue 路由組件向app.vue主文件傳值的方式(兩種常見方式)

    Vue 路由組件向app.vue主文件傳值的方式(兩種常見方式)

    在Vue.js中,可以使用路由傳參的方式向App.vue主頁面?zhèn)鬟f數(shù)據(jù),有多種方法可以實現(xiàn)這一目標(biāo),本文結(jié)合實例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2023-11-11

最新評論