vue3中unplugin-auto-import自動引入示例代碼
vue3日常項目中定義變量需要引入ref,reactive等等比較麻煩,可以通過unplugin-auto-import給我們自動引入
1、安裝
npm i -D unplugin-auto-import
2、在vite.config.ts中引入
import AutoImport from 'unplugin-auto-import/vite'
并在plugins中配置:
export default defineConfig({
plugins: [
......
AutoImport({
imports: ['vue'],
dts: 'src/auto-import.d.ts',
})
]
})AutoImport中可以有很多配置項,可以到github中看詳細配置:
GitHub - antfu/unplugin-auto-import: Auto import APIs on-demand for Vite, Webpack and Rollup
注:dts是幫我們生成的類型聲明文件,直接使用會找不到
上面配置完畢后會在src目錄下生成一個auto-import.d.ts文件,里面幫我們自動引入vue相關(guān)內(nèi)容,我們可以在項目中直接使用。
注意:上面配置完畢dts后可能并不會自動生成auto-import.d.ts文件,可以重新運行一下項目,或者關(guān)閉編輯器重新打開運行即可。
使用如下:
<script setup lang="ts">
// 這里我們不用引入ref直接使用
const msg = ref<string>('Hello Vue3')
</script>
<template>
{{ msg }}
</template>
<style scoped lang="scss"></style>補充:unplugin-auto-import自動導(dǎo)入TS2304警告問題
1.前置配置
通過vite.config.js配置自動導(dǎo)入API
export default defineConfig({
plugins: [
vue(),
AutoImport({
resolvers: [ElementPlusResolver()],
imports: ['vue', 'vue-router', 'pinia'],
eslintrc: {
enabled: false,
filepath: './.eslintrc-auto-import.json',
globalsPropValue: true,
},
})
]
})
生成文件:auto-imports.d.ts
2. TS2304
此時代碼中編寫時會遇到TS的警告。Cannot find name 'ref'.ts(2304)

3.解決方案
ts.config.json文件引入聲明文件: include中引入auto-imports.d.ts
{
"compilerOptions": {
"target": "esnext",
"useDefineForClassFields": true,
"module": "esnext",
"moduleResolution": "node",
"strict": true,
"jsx": "preserve",
"sourceMap": true,
"resolveJsonModule": true,
"esModuleInterop": true,
"lib": ["esnext", "dom"]
},
"include": [
"src/**/*.ts",
"src/**/*.d.ts",
"src/**/*.tsx",
"src/**/*.vue",
"auto-imports.d.ts" // 此處引入該聲明文件
],
"references": [{ "path": "./tsconfig.node.json" }]
}
總結(jié)
到此這篇關(guān)于vue3中unplugin-auto-import自動引入的文章就介紹到這了,更多相關(guān)vue3的unplugin-auto-import自動引入內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
探秘Vue異步更新機制中nextTick的原理與實現(xiàn)
nextTick?是?Vue?提供的一個重要工具,它的作用主要體現(xiàn)在幫助我們更好地處理異步操作,下面就跟隨小編一起來探索一下nextTick的原理與實現(xiàn)吧2024-02-02
vue-cli+iview項目打包上線之后圖標不顯示問題及解決方法
這篇文章主要介紹了解決vue-cli+iview項目打包上線之后圖標不顯示問題,本文通過兩種方法給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-10-10
如何解決element-ui中多個table在tab切換時出現(xiàn)寬度縮小問題
這篇文章主要介紹了如何解決element-ui中多個table在tab切換時出現(xiàn)寬度縮小問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10
如何使用uniapp內(nèi)置組件webview消息傳遞詳解
uni-app的web-view組件用于在應(yīng)用中打開網(wǎng)頁,并支持應(yīng)用和網(wǎng)頁之間的消息傳遞,這篇文章主要介紹了如何使用uniapp內(nèi)置組件webview消息傳遞的相關(guān)資料,需要的朋友可以參考下2025-02-02

