You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue3使用<script setup>时ESLint不必要警告的正确配置方法

解决Vue3 <script setup> 下ESLint误报未使用变量问题

问题原因

默认的@typescript-eslint/no-unused-vars规则只会检查<script>标签内部的变量使用情况,无法识别变量是否在同文件的<template>中被调用,因此会对<script setup>中声明给模板使用的变量产生误告警。

正确解决方案

前置依赖确认

确保已经安装了适配Vue3的ESLint相关依赖:

  • eslint-plugin-vue(推荐v9及以上版本,完整支持<script setup>语法)
  • vue-eslint-parser
  • @typescript-eslint/parser

手动修改ESLint全局配置

编辑项目根目录下的ESLint配置文件(.eslintrc.js/.eslintrc.cjs/.eslintrc.json均可),调整以下配置项:

module.exports = {
  // 原有配置如env、extends等可直接保留
  // 用Vue专属解析器处理SFC单文件结构
  parser: 'vue-eslint-parser',
  parserOptions: {
    // 指定TS解析器处理脚本部分内容
    parser: '@typescript-eslint/parser',
    ecmaVersion: 'latest',
    sourceType: 'module'
  },
  rules: {
    // 关闭原有不支持Vue SFC的未使用变量校验规则
    'no-unused-vars': 'off',
    '@typescript-eslint/no-unused-vars': 'off',
    // 开启Vue专属的未使用变量校验,会同时识别模板和脚本中的变量使用情况
    'vue/no-unused-vars': 'warn'
  }
}

简化配置方案

如果项目使用Vue官方的ESLint预设,直接在extends配置项中加入以下规则集即可自动适配,无需手动修改单个规则:

extends: [
  'plugin:vue/vue3-recommended',
  '@vue/eslint-config-typescript'
]

临时局部解决方案

如果不想修改全局配置,可在告警的变量行前加注释单独跳过校验:

// eslint-disable-next-line @typescript-eslint/no-unused-vars
import NoteComponent from 'components/Note.vue'

内容的提问来源于stack exchange,提问作者WoJ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 06:36:00