使用自动导入后eslint报错eslint9的问题及解决方法

 更新时间:2025年03月21日 11:17:10   作者:YUELEI118  
本文介绍了使用`pnpm create vue@latest`创建Vue应用时,如何配置ESLint和Prettier,包括解决两者冲突以及自动导入后Eslint报错的问题,感兴趣的朋友一起看看吧

前提:使用pnpm create vue@latest创建vue应用,并且在创建项目时就勾选eslint和prettier,不然有些配置还需要手动配,比如解决eslint和prettier的冲突问题

1. 解决使用自动导入后Eslint报错问题

配置vite.config.ts

    // 自动导入api
    AutoImport({
      resolvers: [ElementPlusResolver()],
      imports: ['vue', 'pinia', 'vue-router'],
      // dts: 'src/auto-imports.d.ts', // 生成自动导入的类型声明文件
      eslintrc: {
        enabled: true, // 生成 ESLint 兼容的配置文件,运行程序后会生成下面这个文件,再设置成false
        filepath: './.eslintrc-auto-import.json', // 指定 ESLint 配置文件路径
      },
    }),

eslint.config.ts配置

import { createRequire } from 'module'
const require = createRequire(import.meta.url)
const autoImportConfig = require('./.eslintrc-auto-import.json')
export default defineConfigWithVueTs(
	.......
  {
    languageOptions: {
      // 导入变量
      globals: {
        ...autoImportConfig.globals, // 自动导入的全局变量
    },
  },
)

2. eslint完整配置文件

import pluginVue from 'eslint-plugin-vue' // Vue规范
import { defineConfigWithVueTs, vueTsConfigs } from '@vue/eslint-config-typescript'
import globals from 'globals'
import { createRequire } from 'module'
const require = createRequire(import.meta.url)
const autoImportConfig = require('./.eslintrc-auto-import.json')
// 它禁用了所有不必要的或可能与 Prettier 冲突的规则,确保将其放在最后,以便有机会覆盖其他配置。
import skipFormatting from '@vue/eslint-config-prettier/skip-formatting'
export default defineConfigWithVueTs(
  {
    name: 'app/files-to-lint',
    files: ['**/*.{ts,mts,tsx,vue}'],
  },
  {
    name: 'app/files-to-ignore',
    ignores: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**'],
  },
  {
    languageOptions: {
      // 导入变量后,在项目中使用浏览器、node、自定义的变量时就不会报错
      globals: {
        ...globals.browser, // 浏览器全局变量
        ...globals.node, // Node.js 全局变量
        ...autoImportConfig.globals, // 自动导入的全局变量
      },
    },
  },
  pluginVue.configs['flat/essential'],
  vueTsConfigs.recommended,
  skipFormatting,
  {
    // 自定义规则
    rules: {
      'vue/multi-word-component-names': 'off', // 禁用 简单名字 规则
      'no-console': 'off',
      'no-debugger': 'off',
    },
  },
  {
    // 那些文件不需要eslint校验
    ignores: ['**/dist/**', '**/node_modules/**', '.css'],
  },
)

到此这篇关于使用自动导入后eslint报错eslint9的问题及解决方法的文章就介绍到这了,更多相关自动导入后Eslint报错内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue实现剪切板图片压缩功能

    Vue实现剪切板图片压缩功能

    这篇文章主要介绍了Vue实现剪切板图片压缩功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • Vue3.x源码调试的实现方法

    Vue3.x源码调试的实现方法

    这篇文章主要介绍了Vue3.x源码调试的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • Vuex数据持久化实现的思路与代码

    Vuex数据持久化实现的思路与代码

    Vuex数据持久化可以很好的解决全局状态管理,当刷新后数据会消失,这是我们不愿意看到的。这篇文章主要给大家介绍了关于Vuex数据持久化实现的思路与代码,需要的朋友可以参考下
    2021-05-05
  • vue3 头像上传 组件功能实现

    vue3 头像上传 组件功能实现

    这篇文章主要介绍了vue3头像上传组件功能,用到了自定义组件v-model的双向绑定,使用axios + formData 上传文件,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • 简单谈谈Vue3中的ref和reactive

    简单谈谈Vue3中的ref和reactive

    vue3中实现响应式数据的方法是就是使用ref和reactive,所谓响应式就是界面和数据同步,能实现实时更新,下面这篇文章主要给大家介绍了关于Vue3中ref和reactive的相关资料,需要的朋友可以参考下
    2023-04-04
  • 浅谈Vue响应式(数组变异方法)

    浅谈Vue响应式(数组变异方法)

    这篇文章主要介绍了浅谈Vue响应式(数组变异方法),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • vue中插槽整理及用法分析

    vue中插槽整理及用法分析

    在本篇文章里小编给大家整理的是一篇关于vue中插槽整理及用法分析内容,对此有兴趣的朋友们可以跟着学习下。
    2021-12-12
  • vue路由对不同界面进行传参及跳转的总结

    vue路由对不同界面进行传参及跳转的总结

    这篇文章主要介绍了vue路由对不同界面进行传参及跳转的总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 基于vue实现圆形菜单栏组件

    基于vue实现圆形菜单栏组件

    这篇文章主要介绍了基于vue实现的圆形菜单栏组件,本文通过实例代码,图文详解的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • vue中$set的使用(结合在实际应用中遇到的坑)

    vue中$set的使用(结合在实际应用中遇到的坑)

    这篇文章主要介绍了vue中$set的使用(结合在实际应用中遇到的坑),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07

最新评论