av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

javascript - vue使用異步組件結(jié)合is按需加載組件的問(wèn)題

瀏覽:83日期:2023-05-24 08:57:32

問(wèn)題描述

<el-tabs v-model='activeName' @tab-click='handleClick' type='border-card'> <el-tab-pane v-for='item in menu' :label='item.name' :name='item.name' :key='item' :component='item.component'><component :is='item.component'></component></el-tab-pane> </el-tabs>

methods: { handleClick (tab, event) {// 異步加載組件let getCompoentIndex = this.menu.findIndex(x => x.name === tab.name)let component = this.menu[getCompoentIndex].componentif (!this.menu[getCompoentIndex].loading) { this.menu[getCompoentIndex].loading = true Vue.component(component, function (resolve, reject) { setTimeout(function () { require([`./${component}.vue`], resolve)//比如 abc.vue }, 1000) })} } }

點(diǎn)擊的時(shí)候去加載異步組件(可以載入組件),但報(bào)下面的錯(cuò)

[Vue warn]: Unknown custom element: <abc> - did you register the component correctly? For recursive components, make sure to provide the 'name' option.

嘗試為abc組件加上name還是報(bào)這樣的錯(cuò),有人知道怎么解決嗎?abc.vue

export default { name: ’abc’,}

問(wèn)題解答

回答1:

找出了方法就是加上if判斷

<el-tab-pane v-for='item in menu' :label='item.name' :name='item.name' :key='item' :component='item.component'><component :is='item.component' v-if=’flag’></component></el-tab-pane>

data:()=>({ flag: false})

然后在點(diǎn)擊的時(shí)候把flag設(shè)置為true就解決了那個(gè)報(bào)錯(cuò)問(wèn)題

回答2:

我是用WEBPACK解決的。可以參看我的項(xiàng)目。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 国产精品色av | 中文日韩在线视频 | 国产91在线播放 | 欧美性受xxx| 国产美女在线观看 | 一级看片免费视频 | 网页av| 亚洲第一区国产精品 | 亚洲视频一区 | 四虎永久免费黄色影片 | 97高清国语自产拍 | 一本大道久久a久久精二百 国产成人免费在线 | 日韩在线视频一区 | 免费人成在线观看网站 | 国产精品国产a级 | 国产欧美一级 | 日本黄色的视频 | 日韩www | 日韩欧美在线视频 | 嫩草影院黄 | 久久久黄色 | 99视频在线免费观看 | 亚洲成人一区二区 | 特黄毛片| 在线视频中文字幕 | 97av视频在线 | 日韩在线精品视频 | 亚洲精品一区二区冲田杏梨 | 国产日韩精品一区二区 | 国内av在线 | 亚洲欧美网站 | 久热精品在线播放 | 97福利在线 | 一级毛片在线视频 | 热re99久久精品国产99热 | 91视频网址 | 精品国产免费一区二区三区演员表 | 2023亚洲天堂 | 影音先锋中文字幕在线观看 | 99色视频 | 男人的天堂视频网站 |