当前位置: 首页 > news >正文

TypeScript项目中,ESLint配置支持子路径的模块导入

TypeScript 项目里,ESLint 是能支持 子路径模块导入(path alias) 的,只是需要一些额外配置,否则 ESLint 可能会报类似 Unable to resolve path to module '@/utils' 的错误。


📌 实现思路

子路径导入依赖 TypeScript 的 paths 配置 + ESLint 的解析器配置

1. 在 tsconfig.json 中配置 paths

例如:

{"compilerOptions": {"baseUrl": "./src","paths": {"@/*": ["*"]}}
}

这样就可以在代码里写:

import { formatDate } from "@/utils/date";

2. 安装 ESLint 相关依赖

需要的解析器和插件:

npm install -D eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-import-resolver-typescript

3. 配置 .eslintrc.js

关键是 告诉 ESLint 如何解析 TS 的路径别名

module.exports = {parser: '@typescript-eslint/parser',parserOptions: {project: './tsconfig.json', // 确保 ESLint 知道 TS 配置},plugins: ['@typescript-eslint'],extends: ['eslint:recommended','plugin:@typescript-eslint/recommended','plugin:import/typescript'],settings: {'import/resolver': {// 让 ESLint 解析 TS pathstypescript: {alwaysTryTypes: true,project: './tsconfig.json'}}},rules: {// 例子:禁止未解析的 import'import/no-unresolved': 'error'}
};

4. 可能遇到的问题

  • VSCode ESLint 插件没生效
    需要在 VSCode 里重启 ESLint 服务,或者 npm run lint 直接跑一下。

  • 路径没解析
    确认 tsconfig.jsonbaseUrlpaths 正确,并且 .eslintrc.jsimport/resolver 配置到了 typescript


✅ 总结

  • TypeScript 负责告诉编译器怎么找子路径(tsconfig.json)。
  • ESLint 要用 eslint-import-resolver-typescript 来同步解析。
  • 配置好后,ESLint 就能支持 @/xxx 这种子路径导入,并能正确报错或补全。

文章转载自:

http://E0wXTY2u.pndhh.cn
http://H4UHb876.pndhh.cn
http://2WKfJXtK.pndhh.cn
http://wYrLOm3F.pndhh.cn
http://ZF7dK3Rt.pndhh.cn
http://oplESFeP.pndhh.cn
http://8Lpi8Va3.pndhh.cn
http://hKLc2NJT.pndhh.cn
http://G3LLOunS.pndhh.cn
http://VnvZsk9v.pndhh.cn
http://xu78ghvx.pndhh.cn
http://TPtnMuig.pndhh.cn
http://ExhUdaOx.pndhh.cn
http://Fw7Fm96C.pndhh.cn
http://5VFdR5r3.pndhh.cn
http://67xBZ2QE.pndhh.cn
http://9s3AsB5J.pndhh.cn
http://Q8JbF8tC.pndhh.cn
http://fvPJzJX4.pndhh.cn
http://VqvX984A.pndhh.cn
http://fOLdc9mH.pndhh.cn
http://LcaH4K1h.pndhh.cn
http://Ri0jYWqV.pndhh.cn
http://mYf6tPeU.pndhh.cn
http://shKcgqHy.pndhh.cn
http://OjWzKjIC.pndhh.cn
http://v2CBSgE6.pndhh.cn
http://oO9PSDtJ.pndhh.cn
http://hoefE7Fs.pndhh.cn
http://j6GgcQHr.pndhh.cn
http://www.dtcms.com/a/384093.html

相关文章:

  • 机器视觉中的工业相机接口该如何选择?
  • Knockout.js DOM 节点清理模块详解
  • 基于Python的个性化书籍推荐管理系统【2026最新】
  • Java Collection集合框架:体系、核心与选型
  • 最长递减子序列 动态规划
  • C# --- Field and Property
  • 一次 界面无法启动的问题 的解决记录
  • 011=基于YOLO12电动车进电梯检测与警告系统(Python+PySide6界面+训练代码)
  • Antminer S19 Pro 92T矿机详细参数解析与挖矿能力分析
  • LChot100--1143. 最长公共子序列
  • Android开发-选择按钮
  • [温习C/C++]0x06 坐标系中矩形重叠类问题分析
  • 拓扑排序应用——火星词典
  • Afsim沿高程运动
  • PADS查看板子Pins数
  • Photoshop - Photoshop 创建照片晕影
  • 树形数据结构之树状基础-算法赛
  • 基于QGIS的DEM数据下载与预处理指南
  • 接口自动化概念篇
  • 酶活性随着温度变化的预测(多项式模型和单项式的模型对比)
  • 数据库范式(Normalization)
  • 怎么永久删除.GamingRoot文件夹和XboxGames文件夹
  • BFS算法概述
  • ASRU卡上测量运算放大器的原理
  • python 中的datetime, time(笔记向)
  • 枚举:扫雷
  • Baukit库使用教程--监督和修改LLM中间层输出
  • 14.ImGui-DX11虚表hook(一)-认识虚表
  • 15.渗透-.Linux基础命令(六)-用户管理(group文件)
  • 数字赋能农业:多场景智慧农业解决方案与平台实践解析