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

vue3 組件自己引用自己 遞歸組件 組件命名

這篇具有很好參考價(jià)值的文章主要介紹了vue3 組件自己引用自己 遞歸組件 組件命名。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

本人前端開發(fā)一枚,以前一直用vue2.0,為了更新自己掌握的技術(shù)學(xué)習(xí)如何使用vue3.0。

在vue3.0項(xiàng)目中想要實(shí)現(xiàn)菜單組件,要使用到遞歸組件的方法,發(fā)現(xiàn)不知道怎么給組件重命名?。?/p>

在vue2.0中想要實(shí)現(xiàn)遞歸組件方式很簡(jiǎn)單,只要給組件命名,然后自己調(diào)用即可:

<template>
    <div>
        <menu-item :menuList="menuList"></menu-item> //調(diào)用自己
    </div>
</template>

<script>
export default {
  name: 'menuItem', //給組件命名
  props: {
    menuList: {
        type: Array,
        default: () => []
    }
  },
  data () {
    return {
      
    }
  }
}
</script>

<style scoped lang='less'>

</style>

然而在vue3.0中由于采用了script setup 語法糖,這種命名方式就不可行了,原因是它會(huì)自動(dòng)以文件名為主,不需要再寫name屬性:

<script setup>
</script>

后來發(fā)現(xiàn)直接在script setup同級(jí)中再添加一個(gè)script即可:

<template>
    <div>
        <menu-item :menuList="menuList"></menu-item> //調(diào)用自己
    </div>
</template>

<script>
    export default {
        name: 'menuItem' //給組件命名
    }
</script>

<script setup>
    const props = defineProps({
        menuList: {
            type: Array,
            default: () => []
        }
    })
</script>


<style scoped lang='less'>

</style>

使用插件:unplugin-vue-define-options 給組件定義別名

1.安裝插件

npm install unplugin-vue-define-options -D

2.在vite.config.js文件中配置

import vue from '@vitejs/plugin-vue'
import { defineConfig } from 'vite'
import DefineOptions from 'unplugin-vue-define-options/vite'
 
export default defineConfig({
  plugins: [vue(), DefineOptions()],
});

3.配置完成,在組件中使用:

<template>
    <div>
        <menu-item :menuList="menuList"></menu-item> //調(diào)用自己
    </div>
</template>

<script setup>
    defineOptions({
        name: 'menuItem' //給組件命名
    });
    const props = defineProps({
        menuList: {
            type: Array,
            default: () => []
        }
    })
</script>


<style scoped lang='less'>

</style>

使用了typescript的,可以配合插件直接在script標(biāo)簽中設(shè)置name,具體方式如下:

1.安裝插件:

npm install vite-plugin-vue-setup-extend

2.在script 標(biāo)簽中直接設(shè)置name即可:文章來源地址http://www.zghlxwxcb.cn/news/detail-457877.html

<script lang="ts" setup name="menuItem">

</script>

到了這里,關(guān)于vue3 組件自己引用自己 遞歸組件 組件命名的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • Vue3:Elemenu-Plus遞歸型菜單組件封裝(2)

    ? ? ? ? 在上一篇文章中,以Vue2的選項(xiàng)式 API風(fēng)格,封裝了遞歸型菜單組件,但是這其中存在著一些問題,例如: ????????【1】子組件menuList.vue中,通過this.$emit()方式定義的事件,在Vue3組合式API風(fēng)格父組件中可能會(huì)被執(zhí)行多次。之所以說是可能,是因?yàn)槲疫@測(cè)試中確實(shí)遇

    2024年02月13日
    瀏覽(25)
  • Vue3使用遞歸組件封裝El-Menu多級(jí)菜單
  • vue3 + vite Cannot access ‘xxx‘ before initialization 組件熱更新失敗,es模塊循環(huán)引用問題

    vue3 + vite Cannot access ‘xxx‘ before initialization 組件熱更新失敗,es模塊循環(huán)引用問題

    問題原因 本人 在 pinia stores 文件中使用了 router ,而main.ts 已經(jīng)引入過router main.ts pinia 下 modelCache.ts 文件 pinia 下 modelCache.ts 文件使用了router 并Model組件中 引入了modelCache.ts 該文件 這樣導(dǎo)致es模塊循環(huán) vite熱更新失敗 解決 pinia 下 modelCache.ts 文件 router 引入方式改為 函數(shù)引入 在

    2024年02月12日
    瀏覽(35)
  • 前端常用 Vue3 項(xiàng)目組件大全

    Vue.js 是一種流行的 JavaScript 前端框架,它簡(jiǎn)化了構(gòu)建交互式的用戶界面的過程。Vue3 是 Vue.js 的最新版本,引入了許多新的特性和改進(jìn)。在 Vue3 中,組件是構(gòu)建應(yīng)用程序的核心部分,它們可以重用、組合和嵌套。下面是一些前端開發(fā)中常用的 Vue3 項(xiàng)目組件。 1、Vue Router: Vue

    2024年02月10日
    瀏覽(24)
  • 前端學(xué)習(xí)筆記(14)-Vue3組件傳參

    前端學(xué)習(xí)筆記(14)-Vue3組件傳參

    1.props(父組件傳遞給子組件) 1.1 實(shí)現(xiàn) 如果你沒有使用 script setup,props 必須以 props 選項(xiàng)的方式聲明,props 對(duì)象會(huì)作為 setup() 函數(shù)的第一個(gè)參數(shù)被傳入: 在子組件中: 在父組件中: 一個(gè)組件可以有任意多的 props,默認(rèn)情況下,所有 prop 都接受任意類型的值。 這種情況下,我

    2024年01月21日
    瀏覽(29)
  • Vue3前端開發(fā),父組件給子組件傳遞數(shù)據(jù)練習(xí)

    Vue3前端開發(fā),父組件給子組件傳遞數(shù)據(jù)練習(xí)

    Vue3前端開發(fā),父組件給子組件傳遞數(shù)據(jù)練習(xí)!還是借用剛剛的組件模板,來開展父?jìng)髯拥木毩?xí)。 依舊是需要借助官方提供的宏函數(shù)來接收數(shù)據(jù)。defineProps. 這個(gè)是父組件里面的內(nèi)容。我們自定義了2個(gè)變量,一個(gè)是車?yán)遄訂蝺r(jià)。一個(gè)是純文本。 一個(gè)數(shù)字類型,一個(gè)文本類型。都

    2024年01月22日
    瀏覽(25)
  • 前端 vite+vue3——寫一個(gè)隨機(jī)抽獎(jiǎng)組件

    前端 vite+vue3——寫一個(gè)隨機(jī)抽獎(jiǎng)組件

    大家好,我是yma16,本文分享關(guān)于前端 vite+vue3——寫一個(gè)抽獎(jiǎng)隨機(jī)組件。 vue3系列相關(guān)文章: 前端vue2、vue3去掉url路由“ # ”號(hào)——nginx配置 csdn新星計(jì)劃vue3+ts+antd賽道——利用inscode搭建vue3(ts)+antd前端模板 認(rèn)識(shí)vite_vue3 初始化項(xiàng)目到打包 python_selenuim獲取csdn新星賽道選手所在城

    2024年02月08日
    瀏覽(21)
  • vue3.x + vite4.3構(gòu)建屬于自己的組件庫(kù)并發(fā)布npm包

    vue3.x + vite4.3構(gòu)建屬于自己的組件庫(kù)并發(fā)布npm包

    歡迎點(diǎn)擊領(lǐng)取 -《前端開發(fā)面試題進(jìn)階秘籍》:前端登頂之巔-最全面的前端知識(shí)點(diǎn)梳理總結(jié) *分享一個(gè)使用比較久的?? 在國(guó)內(nèi)的項(xiàng)目研發(fā)過程中,使用vue框架的項(xiàng)目占比很大,同樣延伸出了很多非常優(yōu)秀的UI組件庫(kù),比如element-plus、ant-design等;優(yōu)勢(shì):資源較少,快速開發(fā),豐

    2024年02月02日
    瀏覽(48)
  • 沉淀自己的pro-table組件,并發(fā)布到npm(Vue3、element-plus)

    傳送門 約定:npm包名 vue3-el-pro-table ,引用 vue3-el-pro-table 的包名為“本項(xiàng)目”。 聲明: Vue3ProTable.vue 代碼是在這個(gè)項(xiàng)目的基礎(chǔ)上進(jìn)行修改的。 作者:hans774882968以及hans774882968以及hans774882968 Quick Start src/main.ts Then use vue3-pro-table / directly in .vue file. Import interface: Component props defi

    2024年02月16日
    瀏覽(58)
  • Vite + Vue3 +Vant4構(gòu)建項(xiàng)目時(shí),按需引入使用Toast組件,引用 showToast 時(shí)出現(xiàn)編譯報(bào)錯(cuò)的解決方案

    Vite + Vue3 +Vant4構(gòu)建項(xiàng)目時(shí),按需引入使用Toast組件,引用 showToast 時(shí)出現(xiàn)編譯報(bào)錯(cuò)的解決方案

    一.問題定位 在Vite + Vue3 +Vant4構(gòu)建項(xiàng)目時(shí),需要使用Toast組件顯示提示信息,按照官方文檔使用函數(shù)調(diào)用 使用后直接報(bào)錯(cuò),說是找不到對(duì)應(yīng)的樣式文件(如下圖): 在項(xiàng)目中查找node-moudles文件,確實(shí)沒有找到,只有一個(gè)toast文件(如下圖): 在百度搜索解決方法,說是需要單

    2024年01月17日
    瀏覽(94)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包