最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解unplugin?vue?components不能識(shí)別組件自動(dòng)導(dǎo)入類型pnpm

 更新時(shí)間:2023年01月19日 10:24:16   作者:twinkle  
這篇文章主要為大家介紹了unplugin?vue?components不能識(shí)別組件自動(dòng)導(dǎo)入類型pnpm詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

引言

unplugin-vue-components 是一款能幫助組件自動(dòng)導(dǎo)入的庫(kù),簡(jiǎn)單點(diǎn)的說,你不需要使用import xx from 'xxx.vue' 這行語(yǔ)句也能實(shí)現(xiàn)導(dǎo)入的效果。

<script setup lang="ts">
import ScreenAdpter from '@compontents/ScreenAdpter/index.vue'
import Play from '@components/Play/index.vue'
</script>
<template>
    <ScreenAdpter>
        <Play></Play>
    </ScreenAdpter>
</template>
<style scoped></style>

等同于以下效果

<script setup lang="ts">
</script>
<template>
    <ScreenAdpter>
        <Play></Play>
    </ScreenAdpter>
</template>
<style scoped></style>

效果

這里需要實(shí)現(xiàn)的效果如下:

發(fā)現(xiàn)問題

但是問題來了,使用pnpm的用戶,我相信許多人是實(shí)現(xiàn)不了這上效果的??????。當(dāng)所有的配置文件配好,然后就出現(xiàn)下面的效果啦?。?!

問題效果

你會(huì)發(fā)現(xiàn),在組件使用的地方的類型是any, 當(dāng)你去unplugin-vue-components 這里面點(diǎn)擊組件是可以進(jìn)去的,那么怎么來解決這個(gè)引用問題呢?

解決問題

刨根問底

既然組件顯示的類型是any,那么咱們先看下生產(chǎn)的類型聲明文件。

// generated by unplugin-vue-components
// We suggest you to commit this file into source control
// Read more: https://github.com/vuejs/core/pull/3399
import '@vue/runtime-core'
export {}
declare module '@vue/runtime-core' {
  export interface GlobalComponents {
    Play: typeof import('./components/Play/index.vue')['default']
    RouterLink: typeof import('vue-router')['RouterLink']
    RouterView: typeof import('vue-router')['RouterView']
    ScreenAdpter: typeof import('./components/ScreenAdpter/index.vue')['default']
  }
}

在自動(dòng)生成的components.d.ts文件中的 declare module '@vue/runtime-core' 聲明,在 pnpm 中只能訪問項(xiàng)目的頂級(jí)依賴,而 @vue/runtime-corevue 模塊下的依賴,不是頂級(jí)依賴,導(dǎo)致聲明語(yǔ)句失效。(yarnnpmnode_modules 平鋪目錄結(jié)構(gòu)允許訪問所有依賴)

解決方案

  • ?? (首選)在目錄的根目錄中創(chuàng)建或編輯.npmrc文件,并在其中添加以下行:public hoist pattern[]=@vue/runtime core
  • (不推薦)在目錄的根目錄中創(chuàng)建或編輯.npmrc文件,并在其中添加以下行:shamefully-hoist=true(這樣做將使所有嵌套依賴項(xiàng)都可用作頂級(jí)依賴項(xiàng))
  • (不推薦)運(yùn)行pnpm add@vue/runtime core -D將嵌套模塊添加為頂級(jí)依賴項(xiàng)。(您必須確保@vue/runtime內(nèi)核的版本與項(xiàng)目中安裝的vue版本相匹配。)
  • (不推薦)使用0.18.5版本的unplugin-vue-components組件,而不是最新版本。(之所以有效,是因?yàn)樵诖税姹局埃?code>unplugin-vue-components 組件將components.d.ts中的模塊聲明為“vue”。缺點(diǎn)是,您將錯(cuò)過插件的最新更新和改進(jìn)。)
  • (不建議)手動(dòng)更新components.d.ts中的模塊聲明名稱,以聲明模塊“vue”,而不是聲明模塊“@vue/runtime core”(這很不方便,因?yàn)槊慨?dāng)取消插入vue組件自動(dòng)生成新的components.d.ts文件并覆蓋您的更改時(shí),您都必須更新模塊名稱。)

注意: 如果您選擇了選項(xiàng)1或2并創(chuàng)建了.npmrc文件,請(qǐng)?jiān)谥筮\(yùn)行pnpm i以使用最新的配置更新node_modules。然后,重新加載工作區(qū)。自動(dòng)導(dǎo)入組件的Intellisense應(yīng)再次工作。

如果這么操作還是不行,就重啟下vscodeok

以上就是詳解unplugin vue components不能識(shí)別組件自動(dòng)導(dǎo)入類型pnpm的詳細(xì)內(nèi)容,更多關(guān)于unplugin vue components組件導(dǎo)入的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • uni-app中使用ECharts配置四種不同的圖表(示例詳解)

    uni-app中使用ECharts配置四種不同的圖表(示例詳解)

    在uni-app中集成ECharts可以為我們的應(yīng)用提供強(qiáng)大的圖表功能,我們?cè)敿?xì)說一下如何在uni-app中使用ECharts,并配置四種不同的圖表,感興趣的朋友跟隨小編一起看看吧
    2024-01-01
  • vue實(shí)現(xiàn)數(shù)字變換動(dòng)畫的示例代碼

    vue實(shí)現(xiàn)數(shù)字變換動(dòng)畫的示例代碼

    本文主要介紹了vue實(shí)現(xiàn)數(shù)字變換動(dòng)畫的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • vue 2 實(shí)現(xiàn)自定義組件一到多個(gè)v-model雙向數(shù)據(jù)綁定的方法(最新推薦)

    vue 2 實(shí)現(xiàn)自定義組件一到多個(gè)v-model雙向數(shù)據(jù)綁定的方法(最新推薦)

    有時(shí)候我們需要對(duì)一個(gè)組件綁定自定義 v-model,以更方便地實(shí)現(xiàn)雙向數(shù)據(jù),例如自定義表單輸入控件,這篇文章主要介紹了vue 2 實(shí)現(xiàn)自定義組件一到多個(gè)v-model雙向數(shù)據(jù)綁定的方法,需要的朋友可以參考下
    2024-07-07
  • vue通過watch對(duì)input做字?jǐn)?shù)限定的方法

    vue通過watch對(duì)input做字?jǐn)?shù)限定的方法

    本篇文章主要介紹了vue通過watch對(duì)input做字?jǐn)?shù)限定的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • 淺談vue項(xiàng)目,訪問路徑#號(hào)的問題

    淺談vue項(xiàng)目,訪問路徑#號(hào)的問題

    這篇文章主要介紹了淺談vue項(xiàng)目,訪問路徑#號(hào)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • element-plus的el-tree的雙向綁定示例代碼

    element-plus的el-tree的雙向綁定示例代碼

    這篇文章主要介紹了element-plus的el-tree的雙向綁定的示例代碼,代碼簡(jiǎn)單易懂,結(jié)合圖文給大家展示,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • vue-cli2,vue-cli3,vite?生產(chǎn)環(huán)境去掉console.log

    vue-cli2,vue-cli3,vite?生產(chǎn)環(huán)境去掉console.log

    console.log一般都是在開發(fā)環(huán)境下使用的,在生產(chǎn)環(huán)境下需要去除?,本文主要介紹了vue-cli2,vue-cli3,vite?生產(chǎn)環(huán)境去掉console.log,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-05-05
  • 關(guān)于Vue組件庫(kù)開發(fā)詳析

    關(guān)于Vue組件庫(kù)開發(fā)詳析

    這篇文章主要給大家介紹了關(guān)于Vue組件庫(kù)開發(fā)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用vue具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07
  • Vue2利用echarts繪制折線圖,餅圖和大圖

    Vue2利用echarts繪制折線圖,餅圖和大圖

    這篇文章主要為大家詳細(xì)介紹了Vue2如何利用echarts繪制折線圖,餅圖和大圖,文中的示例代碼簡(jiǎn)潔易懂,具有一定的借鑒價(jià)值,需要的可以參考一下
    2023-04-04
  • vue中this.$message的實(shí)現(xiàn)過程詳解

    vue中this.$message的實(shí)現(xiàn)過程詳解

    Message在開發(fā)中的使用頻率很高,也算是Element-UI組件庫(kù)中比較簡(jiǎn)單的,對(duì)于感興趣的朋友可以一起探討一下Message組件的實(shí)現(xiàn),本文詳細(xì)介紹了vue中this.$message的實(shí)現(xiàn)過程,感興趣的同學(xué)可以參考一下
    2023-04-04

最新評(píng)論

墨竹工卡县| 东丰县| 奉节县| 安西县| 肇州县| 灯塔市| 穆棱市| 浦东新区| 新密市| 忻城县| 泸水县| 宁蒗| 武功县| 盱眙县| 福清市| 绍兴县| 尚志市| 兴安县| 湖北省| 奉新县| 齐齐哈尔市| 淮北市| 桓台县| 克拉玛依市| 泰顺县| 丹阳市| 垣曲县| 白银市| 乡城县| 姜堰市| 广灵县| 重庆市| 辉县市| 大安市| 商丘市| 隆子县| 鄄城县| 托里县| 花垣县| 和顺县| 太和县|