vue3+ts+vite项目使用 unplugin-auto-import (自动导入)

该项目是基于vite创建的 vue3 + ts + vue-router + pinia项目;

启动项目:

npm install
npm run dev

启动后遇到了以下问题:

问题1:

Component name "Person" should always be multi-word. eslint(vue/multi-word-component-names)

解释:组件名"Person"应该总是由多个单词组成(组件名 name: 'Person')

解决方法:
.eslintrc.cjs 中添加以下配置

rules: {
  'vue/multi-word-component-names': 'off'
}

问题2:

项目中会频繁引入使用 vue、vue-router、pinia 内的API, 如ref、reactive

使用自动引入插件进行全局引入即可

使用步骤:

  • 安装:npm i -D unplugin-auto-import
  • 修改 vite.config.ts
javascript 复制代码
import AutoImport from 'unplugin-auto-import/vite'

export default defineConfig({
  plugins: [
    // ... other
    AutoImport({
      imports: ['vue','vue-router', 'pinia'], // 自动引入的三方库
      // dts: 'src/auto-import.d.ts', // 全局自动引入文件存放路径;不配置保存在根目录下;配置为false时将不会生成 auto-imports.d.ts 文件(不影响效果)
      eslintrc: {
        // 项目中使用了 eslint,那么虽然可以正常使用 API 了,但是 eslint 还是会报没有引入的报错。下面的配置可以处理这种情况
        enabled: true, // 会在根目录下自动生成 .eslintrc-auto-import.json 文件
      }
    })
  ]
})
  • .eslintrc.cjs 中使用自动生成的 .eslintrc-auto-import.json 文件

    module.exports = {
    root: true,
    extends: [
    // ... other 配置
    './.eslintrc-auto-import.json'
    ],
    }

ps: 我配置了后并没有效果,还是会报错如找不到名称"ref"。ts-plugin(2304),不知道为啥!

有知道的大佬说一声呢,感谢!!(^▽^)

文章仅为本人学习过程的一个记录,仅供参考,如有问题,欢迎指出!

相关推荐
MardaWang3 小时前
HarmonyOS开发,遇到 Object.assign(this, source)报错怎么解决?
typescript·harmonyos
IT、木易1 天前
TypeScript跟js,es6这些的区别
javascript·typescript·es6
字节颤抖1 天前
vite+vue3开发uni-app时低版本浏览器不支持es6语法的问题排坑笔记
前端·uni-app·es6·vue3·vite·babel·兼容
孟陬1 天前
持续改善 React 代码的 SOLID 原则(附带 hooks 详细案例)适用于高级前端
react.js·设计模式·typescript
李二。1 天前
TypeScript学习:初学
typescript
engchina2 天前
使用 Vite + React 19 集成 Tailwind CSS 与 shadcn/ui 组件库完整指南
css·react.js·ui·vite·tailwind·react 19·shadcn
DCTANT2 天前
【原创】vue-element-admin-plus完成编辑页面中嵌套列表功能
前端·javascript·vue.js·elementui·typescript
Hamm2 天前
巧妙使用Vue3泛型组件,提升你的组件使用体验
前端·vue.js·typescript
前端熊猫3 天前
Vue 3 生命周期和生命周期函数
前端·javascript·vue.js·vue3·生命周期函数
灰色人生qwer3 天前
React + TypeScript+ Vite 配置路径别名和vscode智能路径提示
vscode·react.js·typescript