亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue中setup語法糖寫法實(shí)例

 更新時(shí)間:2022年12月05日 14:01:47   作者:是張魚小丸子鴨  
如果你在 vue3 開發(fā)中使用了語法的話,對(duì)于組件的name屬性,需要做一番額外的處理,下面這篇文章主要給大家介紹了關(guān)于Vue3 setup語法糖的相關(guān)資料,需要的朋友可以參考下

變量聲明

變量聲明定義的時(shí)候,不需要返回可以直接使用即可

沒有使用setup語法糖時(shí)寫法

<script>
import {useStore} from 'vuex'
export default {
  setup() {
    const store=useStore()
    const plus=()=>{
      store.commit('plus')
    }
    return {plus}
  },
}
</script>

使用setup語法糖寫法

<script setup>
import { reactive, ref, toRefs } from "vue";
let num = ref(100);
const plus = ()=>{
  num.value++;
}
let {name,age} = toRefs(reactive({
  name:"張三",
  age:20,
}));
</script>

toRefs解析reactive數(shù)據(jù),可以通過解構(gòu)賦值進(jìn)行數(shù)據(jù)獲取

在setup中使用toRefs來解析對(duì)象,在非setup中使用...toRefs()方法來解析,這也是一個(gè)區(qū)別

setup語法糖組件只需要導(dǎo)入,不需要注冊(cè)組件

<template>
  <div>
    {{name}}--{{age}}
    <el-button @click="plus">Plus</el-button>
    <son/>
  </div>
</template>
<script setup>
import { reactive, ref, toRefs } from "vue";
import son from "../components/Son.vue"
let num = ref(100);
const plus = ()=>{
  num.value++;
}
let {name,age} = toRefs(reactive({
  name:"張三",
  age:20,
}));
</script>

在非setup語法糖中我們需要使用components來注冊(cè)子組件

setup語法糖中父子組件通信也發(fā)生了變化,使用defineProps和defineEmits來進(jìn)行父子組件通信

父?jìng)髯?/h2>

父組件

<template>
    <div>
      {{name}}--{{age}}
      <Son :num="age" :name='name' />
    </div>
  </template>
  <script setup>
  import { reactive, ref, toRefs } from "vue";  
  import Son from "./Son.vue"
  let {name,age} = toRefs(reactive({
    name:"張三",
    age:20,
  }));
  </script>

子組件

<template>
    <div>
        <h3>Son子組件--{{num}}--{{name}}</h3>       
    </div>
</template>
<script setup>
import { ref,defineEmits } from "vue"
defineProps({
    num:{
        type:Number,
    },
    name:{
        type:String,
    }
})
</script>

子傳父

父組件

<template>
    <div>
      <Son @plus="plus"/>
    </div>
  </template>
  <script setup>
  import { reactive, ref, toRefs } from "vue";
  import Son from "./Son.vue"
  let num = ref(100);
  const plus = ()=>{
    num.value++;
  }
  </script>

子組件

<template>
    <div>
        <button @click="add">點(diǎn)我</button>
    </div>
</template>
<script setup>
import { ref,defineEmits } from "vue"
const num=ref(1)
const emits = defineEmits(['num'])//定義號(hào)要子傳父
const add=()=>{
    emits('plus',num.value)
}
</script>

到此這篇關(guān)于vue中setup語法糖寫法實(shí)例的文章就介紹到這了,更多相關(guān)vue setup語法糖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue金額格式化保留兩位小數(shù)的實(shí)現(xiàn)

    vue金額格式化保留兩位小數(shù)的實(shí)現(xiàn)

    這篇文章主要介紹了vue金額格式化保留兩位小數(shù)的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • Vue實(shí)現(xiàn)骨架屏的示例代碼

    Vue實(shí)現(xiàn)骨架屏的示例代碼

    骨架屏就是在頁面數(shù)據(jù)尚未加載前先給用戶展示出頁面的大致結(jié)構(gòu)。本文將利用Vue實(shí)現(xiàn)簡(jiǎn)單的骨架屏,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-03-03
  • Vue項(xiàng)目移動(dòng)端滾動(dòng)穿透問題的實(shí)現(xiàn)

    Vue項(xiàng)目移動(dòng)端滾動(dòng)穿透問題的實(shí)現(xiàn)

    這篇文章主要介紹了Vue項(xiàng)目移動(dòng)端滾動(dòng)穿透問題的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • vue-cli腳手架-bulid下的配置文件

    vue-cli腳手架-bulid下的配置文件

    這篇文章主要介紹了vue-cli腳手架-bulid下的配置文件,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • vue腳手架中配置Sass的方法

    vue腳手架中配置Sass的方法

    本篇文章主要介紹了vue腳手架中配置Sass的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-01-01
  • Vue編譯器AST抽象語法樹源碼分析

    Vue編譯器AST抽象語法樹源碼分析

    這篇文章主要為大家介紹了Vue編譯器AST抽象語法樹源碼分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • vue實(shí)現(xiàn)商品詳情頁放大鏡功能

    vue實(shí)現(xiàn)商品詳情頁放大鏡功能

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)商品詳情頁放大鏡功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • vue-cli如何引入bootstrap工具的方法

    vue-cli如何引入bootstrap工具的方法

    本篇文章主要介紹了vue-cli如何引入bootstrap工具的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-10-10
  • vue3?setup語法糖之組件傳參(defineProps、defineEmits、defineExpose)示例詳解

    vue3?setup語法糖之組件傳參(defineProps、defineEmits、defineExpose)示例詳

    defineProps?和?defineEmits?都是只能在?<script?setup>?中使用的編譯器宏,他們不需要導(dǎo)入,且會(huì)隨著?<script?setup>?的處理過程一同被編譯掉,這篇文章主要介紹了vue3?setup語法糖之組件傳參(defineProps、defineEmits、defineExpose)示例詳解,需要的朋友可以參考下
    2023-01-01
  • vue計(jì)算屬性時(shí)v-for處理數(shù)組時(shí)遇到的一個(gè)bug問題

    vue計(jì)算屬性時(shí)v-for處理數(shù)組時(shí)遇到的一個(gè)bug問題

    這篇文章主要介紹了在做vue計(jì)算屬性,v-for處理數(shù)組時(shí)遇到的一個(gè)bug 問題,需要的朋友可以參考下
    2018-01-01

最新評(píng)論