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

vue3中使用ref語法糖

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

自從引入組合式 API 的概念以來,一個主要的未解決的問題就是 ref 和響應(yīng)式對象到底用哪個。響應(yīng)式對象存在解構(gòu)丟失響應(yīng)性的問題,而 ref 需要到處使用 .value 則感覺很繁瑣,并且在沒有類型系統(tǒng)的幫助時很容易漏掉 .value

以上是官方原話,大概就是新的語法糖,可以讓我們更方便的使用ref,而不用每次都寫.value,大概就是把這樣的代碼,簡化成這樣

 <script setup lang="ts">
import { ref } from 'vue'

const count = ref(0)

console.log(count.value)

function increment() {count.value++
}
</script>

<template><button @click="increment">{{ count }}</button>
</template> 

簡化成這樣

<script setup lang="ts">
let count = $ref(0)

console.log(count)

function increment() {count++
}
</script>

<template><button @click="increment">{{ count }}</button>
</template> 

每一個會返回 ref 的響應(yīng)式 API 都有一個相對應(yīng)的、以 $ 為前綴的宏函數(shù)。包括以下這些 API:

1.ref -> $ref
2.computed -> $computed
3.shallowRef -> $shallowRef
4.customRef -> $customRef
5.toRef -> $toRef

多余的不再贅述,大家可以自行查看官方文檔,接下來我們來看看這個語法糖的具體使用,在項(xiàng)目中怎么配置

第一步(必須),在vite中啟用語法糖開關(guān)

打開vite.config.ts,添加如下代碼

 vue({reactivityTransform: true, // 啟用響應(yīng)式語法糖$ref $computed $toRef}) 
第二步(可選),配置tsconfig.json

在compilerOptions下添加vue/ref-macros, 不然會報錯TS2304: Cannot find name '$ref'.雖然不影響使用,但是會影響開發(fā)體驗(yàn)

 "compilerOptions":{..."types": ["vue/ref-macros"] } 
第三步(可選),配置eslint

在eslintrc.cjs中加上global,不然會提示ESLint: '$ref' is not defined.(no-undef)

module.exports = {...globals: {$ref: "readonly",$computed: "readonly",$shallowRef: "readonly",$customRef: "readonly",$toRef: "readonly",}
}; 

如果不嫌麻煩,又不想代碼中總是有誤報錯誤的行為,可以直接在vue代碼中引入vue/ref-macros,這樣就不用配置tsconfig.json和eslint了,也就是剛剛寫的第二,第三步

<script setup lang="ts">
import { $ref } from "vue/macros";
let count = $ref(0)

console.log(count)

function increment() {count++
}
</script>

<template><button @click="increment">{{ count }}</button>
</template> 

最后

最近找到一個VUE的文檔,它將VUE的各個知識點(diǎn)進(jìn)行了總結(jié),整理成了《Vue 開發(fā)必須知道的36個技巧》。內(nèi)容比較詳實(shí),對各個知識點(diǎn)的講解也十分到位。
vue3中使用ref語法糖
vue3中使用ref語法糖
vue3中使用ref語法糖
vue3中使用ref語法糖

有需要的小伙伴,可以點(diǎn)擊下方卡片領(lǐng)取,無償分享文章來源地址http://www.zghlxwxcb.cn/news/detail-408768.html

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

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

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

相關(guān)文章

  • Vue3的組合式API中如何使用provide/inject?

    聽說 Vue 3 加入了超多酷炫的新功能,比如組合式 API 等等。今天我們就來聊聊 Vue 3 中的組合式 API,并且如何使用 provide/inject 來搞定它! 首先,我們來了解一下組合式 API 是什么。其實(shí),組合式 API 就是一個用來構(gòu)建和組合函數(shù)的工具,它能讓我們的代碼更加簡潔、可讀性更

    2024年02月11日
    瀏覽(22)
  • Vue3:Typescript與組合式API、defineProps、defineEmits等使用

    使用 defineProps() 使用 script setup 在使用 script setup 時, defineProps() 宏函數(shù)支持從它的參數(shù)中推導(dǎo)類型: 運(yùn)行時聲明 基于類型的聲明 注意:接口或?qū)ο笞置骖愋涂梢园瑥钠渌募?dǎo)入的類型引用,但是,傳遞給 defineProps 的泛型參數(shù)本身不能是一個導(dǎo)入的類型, 這是因?yàn)閂ue

    2023年04月20日
    瀏覽(35)
  • 【vue3】組合式API之setup()介紹與reactive()函數(shù)的使用

    【vue3】組合式API之setup()介紹與reactive()函數(shù)的使用

    ==??博主:初映CY的前說(前端領(lǐng)域) ,??本文核心:setup()概念、 reactive()的使用 【前言】vue3作為vue2的升級版,有著很多的新特性,其中就包括了組合式API,也就是是 Composition API。學(xué)習(xí)組合式API有什么優(yōu)點(diǎn)呢?之前的vue2中結(jié)構(gòu)不是挺不錯的嗎?那么接下來的事件,我將帶著你

    2023年04月09日
    瀏覽(21)
  • Vue3的組合式API中如何使用setup()函數(shù)中的條件渲染和循環(huán)渲染

    首先,讓我們來了解一下什么是Vue3的組合式API。組合式API是一種在Vue3中用于構(gòu)建組件的方式,它使用函數(shù)式編程的方法來組織代碼,讓你的組件更加清晰、易于理解和維護(hù)。而setup()函數(shù)則是組合式API的核心,它用于初始化組件并返回包含組件數(shù)據(jù)的對象。 現(xiàn)在,讓我們來看

    2024年02月11日
    瀏覽(20)
  • vue3組合式筆記

    dfdf {{count}} {{state.count}} {{computedValue}} // // 校驗(yàn) submit 事件 // submit: ({ email, password }) = { // if (email password) { // return true // } else { // console.warn(‘Invalid submit event payload!’) // return false // } // } // }) // function submitForm(email, password) { // emit(‘submit’, { email, password }) // } // input // type=“

    2024年02月06日
    瀏覽(20)
  • 【vue3】在setup組合式api中不能使用beforeRouterEnter,監(jiān)聽來源路由和跳轉(zhuǎn)的目標(biāo)路由

    【vue3】在setup組合式api中不能使用beforeRouterEnter,監(jiān)聽來源路由和跳轉(zhuǎn)的目標(biāo)路由

    注意了,在vue3中的setup函數(shù)中是不可以使用beforeRouterEnter這個路由守衛(wèi)的,請看vue-router的官方文檔 ?導(dǎo)航守衛(wèi) | Vue Router 由此可見,在使用組合式api的時候,只有update和leave守衛(wèi),不符合我們的要求。 使用 script? setup/script這種形式的腳本,無法監(jiān)聽來源路由 方法一、我們可以

    2024年02月13日
    瀏覽(24)
  • Vue3組合式API

    Vue3組合式API

    目錄 composition API vs options API 體驗(yàn) composition API setup 函數(shù) reactive 函數(shù) ref 函數(shù) script setup 語法 計算屬性 computed 函數(shù) 監(jiān)聽器 watch 函數(shù) 生命周期 模板中 ref 的使用 組件通訊 - 父傳子 組件通訊 - 子傳父 依賴注入 - provide 和 inject 保持響應(yīng)式 - toRefs 函數(shù) vue2 采用的就是 options API (

    2024年02月07日
    瀏覽(22)
  • 【Vue3】如何創(chuàng)建Vue3項(xiàng)目及組合式API

    【Vue3】如何創(chuàng)建Vue3項(xiàng)目及組合式API

    文章目錄 前言 一、如何創(chuàng)建vue3項(xiàng)目? ①使用 vue-cli 創(chuàng)建 ?②使用可視化ui創(chuàng)建 ?③npm init vite-app? ?④npm init vue@latest 二、 API 風(fēng)格 2.1 選項(xiàng)式 API (Options API) 2.2 組合式 API (Composition API) 總結(jié) 例如:隨著前端領(lǐng)域的不斷發(fā)展,vue3學(xué)習(xí)這門技術(shù)也越來越重要,很多人都開啟了學(xué)習(xí)

    2024年02月03日
    瀏覽(14)
  • vue3組合式API介紹

    根據(jù)官方的說法,vue3.0的變化包括性能上的改進(jìn)、更小的 bundle 體積、對 TypeScript 更好的支持、用于處理大規(guī)模用例的全新 API,全新的api指的就是本文主要要說的組合式api。 在 vue3 版本之前,我們復(fù)用組件(或者提取和重用多個組件之間的邏輯),通常有以下幾種方式: M

    2023年04月22日
    瀏覽(25)
  • Vue3 組合式函數(shù),實(shí)現(xiàn)minxins

    Vue3 組合式函數(shù),實(shí)現(xiàn)minxins

    截至目前,組合式函數(shù)應(yīng)該是在VUE 3應(yīng)用程序中組織業(yè)務(wù)邏輯最佳的方法。它讓我們可以把一些小塊的通用邏輯進(jìn)行抽離、復(fù)用,使我們的代碼更易于編寫、閱讀和維護(hù)。 根據(jù)官方文檔說明,在 Vue 應(yīng)用的概念中, “組合式函數(shù)”是一個利用 Vue 組合式 API 來封裝和復(fù)用有狀態(tài)

    2024年02月08日
    瀏覽(23)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包