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),不知道为啥!

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

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

相关推荐
触底反弹5 小时前
🔥 React 零基础入门(上):环境搭建 + JSX 深度解析
前端·react.js·typescript
谷哥的小弟9 小时前
TypeScript对象类型
javascript·typescript
大家的林语冰16 小时前
🫡 见证历史,TypeScript 7 重写成功,VS Code 原地起飞,GitHub 第一语言联手 Go 破而后立!
前端·javascript·typescript
sugar__salt19 小时前
Vue3 基础知识点整理 —— 从入门到响应式核心完全指南
vue.js·笔记·vue·vue3
触底反弹1 天前
🔥 保姆级教程|SSE + BFF + 跨域三件套,从零实现 ChatGPT 流式输出(附完整代码)
人工智能·node.js·vite
先吃饱再说1 天前
LLM 流式输出的“中间商”方案:BFF 层到底在做什么?
llm·vite
万亿少女的梦1682 天前
基于微信小程序、Spring Boot与Vue3的智慧养老管理系统设计与实现
spring boot·redis·微信小程序·mybatis·vue3
小林ixn2 天前
从BFF到SSE:我在Vue项目里藏了个“AI翻译官”
前端·vue.js·vite
gis开发之家3 天前
《Vue3 从入门到大神33篇》Vue3 源码详解(三):响应式核心思想——从 Object.defineProperty 到 Proxy
前端·javascript·vue.js·vue3·vue3源码
濮水大叔3 天前
在 DTO 中使用 Form Layout 配置复杂表单,支持 Tabs/Groups/Sections
vue.js·typescript·node.js