vue3.x ref()語(yǔ)法糖賦值方式
vue3.x ref()語(yǔ)法糖賦值
由于沒(méi)有仔細(xì)閱讀vue3.0的官方文檔,在給ref()變量賦值的時(shí)候遇到了問(wèn)題
眾所周知,vue3.0增加了ref()、reactive()語(yǔ)法糖。
- ref() 基礎(chǔ)類型、數(shù)組
- reactive() 對(duì)象
兩者除了包裹的內(nèi)容不同,在使用方法上也有一定的區(qū)別。
<template>
<div>{{ refData }}</div>
<div>{{ reactiveData.data }}</div>
</template>
setup() {
const refData = ref('')
const reactiveData = reactive({
data: ''
})
onMounted(() => {
refData.value = 'refData賦值'
reactiveData.data = 'reactiveData賦值'
})
return {
refData, reactiveData
}
}
通過(guò)上面的代碼我們可以看出,在模板中,ref()和reactive()的數(shù)據(jù)直接引用即可;
但是在setup中,ref()數(shù)據(jù)需要給其value賦值,并且使用時(shí)也需要refData.value,而reactive()的數(shù)據(jù)直接引用。
vue3 ref告別.value
最新:
該響應(yīng)式語(yǔ)法糖目前已作廢, 如需繼續(xù)使用可通過(guò) Vue Macros插件

眾所周知,ref要求我們?cè)L問(wèn)變量時(shí)需要加上.value,這讓很多開(kāi)發(fā)者覺(jué)得難受.
let count = ref(1)
const add = () => {
count.value += 1
}
后來(lái)vue3 提了一個(gè) Ref Sugar 的 RFC,即 ref 語(yǔ)法糖,在ref前加上$,目前還處理實(shí)驗(yàn)階段。
Ref語(yǔ)法糖在項(xiàng)目中的使用
1. 該功能默認(rèn)關(guān)閉,需要手動(dòng)開(kāi)啟。
// vite.config.ts
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
export default defineConfig({
plugins: [
vue({
refTransform: true // 開(kāi)啟ref轉(zhuǎn)換
})
]
})
2. 在.vue文件中使用
<template>
<div>{{count}}</div>
<button @click="add">click me</button>
</template>
<script setup>
let count = $ref(1)
const add = () => {
count++
}
</script>
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue2 前后端分離項(xiàng)目ajax跨域session問(wèn)題解決方法
本篇文章主要介紹了vue2 前后端分離項(xiàng)目ajax跨域session問(wèn)題解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
vue項(xiàng)目中使用mapbox地圖切換底圖的詳細(xì)教程
最近開(kāi)始入坑前端mapbox地圖,跟大家一起慢慢深入學(xué)習(xí),下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目中使用mapbox地圖切換底圖的詳細(xì)教程,文中給出了詳細(xì)的實(shí)例代碼,需要的朋友可以參考下2023-04-04
elementui?el-table底層背景色修改簡(jiǎn)單方法
最近在做項(xiàng)目的時(shí)候遇到個(gè)需求,需要修改el-table背景色,這里給大家總結(jié)下,這篇文章主要給大家介紹了關(guān)于elementui?el-table底層背景色修改的相關(guān)資料,需要的朋友可以參考下2023-10-10
vue任意關(guān)系組件通信與跨組件監(jiān)聽(tīng)狀態(tài)vue-communication
這篇文章主要介紹了vue任意關(guān)系組件通信與跨組件監(jiān)聽(tīng)狀態(tài)vue-communication,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10

