setup 單文件組件的語法糖 – Vue3 composition(組合式)API

    詳解Vue3中的語法糖setup

    可以把 setup 語法糖理解為是使用組合式 API 的地方

    setup?選項(xiàng)是一個(gè)接收?props?和?context?的函數(shù),

    接收一個(gè)propscontext函數(shù)并且將setup內(nèi)的內(nèi)容通過return暴露給組件的其余部分。

    注意

    在setup 中:

    • 組件自動注冊,不需要額外聲明(自動將文件名定義)
    • 不再聲明 beforeCreate 和 create
    • 無法使用 this (所以找不到組件實(shí)例無法獲取到data、methods等)
    • 屬性方法不需要 return

    組合式 API 可以提高代碼的復(fù)用性與可讀性,使項(xiàng)目更易維護(hù),其中包括:

    • 響應(yīng)式 API:?比如 ref()?和?reactive()
    • 生命周期鉤子:?比如 onMounted()?和?onUnmounted()
    • 依賴注入:比如?provide()?和?inject()
    • 父子組件之間的交互:defineProps?和?defineEmitsdefineExpose

    由于在執(zhí)行 setup函數(shù)的時(shí)候,還沒有執(zhí)行 Created 生命周期方法,所以在 setup 函數(shù)中,無法使用 data 和 methods 的變量和方法

    由于我們不能在 setup函數(shù)中使用 data 和 methods,所以 Vue 為了避免我們錯(cuò)誤的使用,直接將 setup函數(shù)中的this 修改成了 undefined

    引入

    在頁面中,組件API按需引入:

    import { ref, watch, toRefs, reactive,toRef, computed, defineEmits } from 'vue';

    定義響應(yīng)式數(shù)據(jù)

    ref 與 reactive

    在 setup 中,數(shù)據(jù)并不是響應(yīng)式的,所以需要使用 ref 或者 reactive 對數(shù)據(jù)進(jìn)行處理,也就是創(chuàng)建響應(yīng)式數(shù)據(jù)。

    相關(guān)推薦

    什么是語法糖? – Vue3 composition(組合式)API

    參考文章

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來源于互聯(lián)網(wǎng),僅供網(wǎng)友學(xué)習(xí)交流,若您喜歡本文可附上原文鏈接隨意轉(zhuǎn)載。
    無意侵害您的權(quán)益,請發(fā)送郵件至 1355471563#qq.com 或點(diǎn)擊右側(cè) 私信:Muze 反饋,我們將盡快處理。
    ?
    購物車
    優(yōu)惠劵
    搜索
    主站蜘蛛池模板: 久久久久人妻精品一区| 亚洲丰满熟女一区二区哦| 无码精品人妻一区二区三区免费看| 国产在线一区观看| 极品少妇伦理一区二区| 亚洲电影唐人社一区二区| 中文字幕日韩人妻不卡一区 | 国产SUV精品一区二区88| 一区二区三区福利视频免费观看| 久久精品综合一区二区三区| 国产在线一区视频| 欧洲精品免费一区二区三区| 中文字幕乱码一区久久麻豆樱花 | 91亚洲一区二区在线观看不卡| 无码人妻久久一区二区三区蜜桃 | 亚洲午夜精品一区二区| 国产一区二区精品久久| 99久久精品费精品国产一区二区| 狠狠爱无码一区二区三区| 欧美av色香蕉一区二区蜜桃小说| 97久久精品无码一区二区| 亚洲天堂一区二区三区四区| 无码日韩精品一区二区免费暖暖| 国产激情无码一区二区app| 国产av成人一区二区三区| 精品人妻一区二区三区毛片| 一区二区三区福利视频| 成人国内精品久久久久一区| 国产情侣一区二区三区| 国产一在线精品一区在线观看| av无码一区二区三区| 久久精品无码一区二区三区日韩| 色一乱一伦一区一直爽| 亚洲片一区二区三区| 日本成人一区二区| 精品午夜福利无人区乱码一区| 精品人妻AV一区二区三区| 亚洲国产精品无码第一区二区三区| 亚洲日本久久一区二区va| 多人伦精品一区二区三区视频| 美日韩一区二区三区|