unplugin-auto-import的配置以及eslint報(bào)錯(cuò)解決詳解
unplugin-auto-import的配置和eslint報(bào)錯(cuò)解決
先上官網(wǎng):unplugin-auto-import
unplugin-auto-import 解決了vue3-hook、vue-router、useVue等多個(gè)插件的自動(dòng)導(dǎo)入,也支持自定義插件的自動(dòng)導(dǎo)入,是一個(gè)功能強(qiáng)大的typescript支持工具。
unplugin-auto-import常用的配置如下:
AutoImport({
// 目標(biāo)文件
include: [
/\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
/\.vue$/, /\.vue\?vue/, // .vue
/\.md$/, // .md
],
// 全局引入插件
imports: [
// presets
'vue',
'vue-router',
// custom
{
'@vueuse/core': [
// named imports
'useMouse', // import { useMouse } from '@vueuse/core',
// alias
['useFetch', 'useMyFetch'], // import { useFetch as useMyFetch } from '@vueuse/core',
],
'axios': [
// default imports
['default', 'axios'], // import { default as axios } from 'axios',
],
'[package-name]': [
'[import-names]',
// alias
['[from]', '[alias]'],
],
},
],
// eslint報(bào)錯(cuò)解決
eslintrc: {
enabled: false, // Default `false`
filepath: './.eslintrc-auto-import.json', // Default `./.eslintrc-auto-import.json`
globalsPropValue: true, // Default `true`, (true | false | 'readonly' | 'readable' | 'writable' | 'writeable')
},
// 解析器,例如element-plus的ElementPlusResolver
// see https://github.com/antfu/unplugin-auto-import/pull/23/
resolvers: [
/* ... */
],
// 聲明文件生成位置和文件名稱
dts: './auto-import.d.ts'
})
include和import官方文檔已經(jīng)說的很明白了,我就不在這里贅述了。
eslintrc是用來解決eslint報(bào)錯(cuò)問題的配置項(xiàng)。當(dāng)enabled為true時(shí),會(huì)根據(jù)filepath生成一個(gè)eslint的配置文件。這個(gè)文件需要引入到eslint的配置文件中,例如:
// .eslintrc.js
module.exports = {
extends: [
...
'./.eslintrc-auto-import.json'
]
}
然后一定要記得重新啟動(dòng)項(xiàng)目,這樣才會(huì)生成這個(gè)配置文件。配置完成后,eslint報(bào)錯(cuò)就會(huì)消失。
需要注意的是,一旦生成配置文件之后,最好把enable關(guān)掉,即改成false。否則這個(gè)文件每次會(huì)在重新加載的時(shí)候重新生成,這會(huì)導(dǎo)致eslint有時(shí)會(huì)找不到這個(gè)文件。當(dāng)需要更新配置文件的時(shí)候,再重新打開吧。
resolvers可以引入解析器來進(jìn)行組件聲明,但是就element-plus而言,單獨(dú)使用unplugin-auto-import是無法連同樣式一起導(dǎo)入進(jìn)來的。element-plus的自動(dòng)引入可以參考我之前的一篇文章,里面有比較詳細(xì)的敘述。
Cannot find name ‘ref’.問題解決方法
我看到評(píng)論區(qū)有小伙伴在配置完成后會(huì)出現(xiàn)這個(gè)問題:

從報(bào)錯(cuò)代碼來看,這是一個(gè)ts錯(cuò)誤,而且是找不到名稱。我們可以把問題初步定位到?jīng)]有將*.d.ts文件加入到tsconfig.json配置文件中,所以typescript還不認(rèn)識(shí)它們。
現(xiàn)在我們來引入一下:
{
"include": [
"src/**/*.ts",
"src/**/*.d.ts",
"src/**/*.tsx",
"src/**/*.vue",
"./auto-imports.d.ts" // 引入到這里
]
}
等一下,或者重啟項(xiàng)目就會(huì)發(fā)現(xiàn),這個(gè)問題已經(jīng)解決了。
總結(jié)
到此這篇關(guān)于unplugin-auto-import配置以及eslint報(bào)錯(cuò)解決的文章就介紹到這了,更多相關(guān)unplugin-auto-import配置及eslint報(bào)錯(cuò)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- vue關(guān)于eslint空格縮進(jìn)等的報(bào)錯(cuò)問題及解決
- vue項(xiàng)目中Eslint校驗(yàn)代碼報(bào)錯(cuò)的解決方案
- vue?eslint報(bào)錯(cuò):Component?name?“xxxxx“?should?always?be?multi-word.eslintvue的4種解決方案
- vue-cli創(chuàng)建項(xiàng)目時(shí)由esLint校驗(yàn)導(dǎo)致報(bào)錯(cuò)或警告的問題及解決
- vue項(xiàng)目下,如何用命令直接修復(fù)ESLint報(bào)錯(cuò)
- vue?cli2?和?cli3去掉eslint檢查器報(bào)錯(cuò)的解決
- vue?eslint報(bào)錯(cuò)error?"Component?name?"*****"?should?always?be?multi-word"解決
- eslint常見的一些報(bào)錯(cuò)及解決方法
相關(guān)文章
Vue實(shí)現(xiàn)tab導(dǎo)航欄并支持左右滑動(dòng)功能
本文給大家介紹利用Vue實(shí)現(xiàn)tab導(dǎo)航欄,并且通過flex布局實(shí)現(xiàn)左右滑動(dòng)效果,通過代碼給大家分享tab導(dǎo)航欄布局的實(shí)現(xiàn),本文給大家展示了完整代碼,需要的朋友參考下吧2021-06-06
vue+echarts實(shí)現(xiàn)條紋柱狀橫向圖
這篇文章主要為大家詳細(xì)介紹了vue+echarts實(shí)現(xiàn)條紋柱狀橫向圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
vue3實(shí)現(xiàn)無縫滾動(dòng)組件的示例代碼
在日常開發(fā)中,經(jīng)常遇到需要支持列表循環(huán)滾動(dòng)展示,特別是在數(shù)據(jù)化大屏開發(fā)中,所以小編今天為大家介紹一下如何利用vue3實(shí)現(xiàn)一個(gè)無縫滾動(dòng)組件吧2023-09-09
Vue如何實(shí)現(xiàn)監(jiān)聽組件原生事件
這篇文章主要介紹了Vue如何實(shí)現(xiàn)監(jiān)聽組件原生事件,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
vuex存儲(chǔ)數(shù)據(jù)的幾種方法實(shí)例詳解
在瀏覽網(wǎng)頁時(shí)我們有些時(shí)候需要記住一些用戶選擇的信息,比如登陸時(shí)我們?nèi)绻x擇了記住密碼,那么我們下次進(jìn)入該網(wǎng)頁時(shí)就會(huì)有你上次的登陸信息,下面這篇文章主要給大家介紹了關(guān)于vuex存儲(chǔ)數(shù)據(jù)的幾種方法,需要的朋友可以參考下2022-10-10

