Prettier适配TypeScript异常:可格式化JS但忽略TS文件问题求助
故障排查及解决方法
- ESLint配置规则缺失:你当前配置中TS文件的overrides规则里,仅引入了
prettier基础配置(仅用于关闭和Prettier冲突的ESLint规则),未开启Prettier的ESLint自动修复能力,也没有引入TS语法的基础校验规则。需将TS的overrides配置调整为如下格式:
{ files: ['*.ts', '*.tsx'], // 若项目使用tsx也可一并加入匹配规则 extends: [ 'eslint:recommended', 'plugin:@typescript-eslint/recommended', // 引入TS基础校验规则 'plugin:prettier/recommended' // 开启Prettier自动格式化能力 ], plugins: ['@typescript-eslint'], parser: '@typescript-eslint/parser', parserOptions: { project: './tsconfig.json' // 指向项目内的tsconfig配置文件,避免解析异常 } }
- 依赖未完整安装:检查是否安装了TS场景所需的依赖,缺失的话执行安装:
npm install @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-plugin-prettier prettier --save-dev - Prettier配置过滤了TS文件:检查项目根目录的
.prettierignore是否包含.ts后缀规则,以及.prettierrc配置的include/exclude字段是否排除了TS文件。 - 格式化命令未覆盖TS文件:如果直接调用Prettier命令执行格式化,需确保命令匹配TS文件,示例:
prettier --write "**/*.{js,ts,tsx}"
如果通过ESLint自动修复执行格式化,需确保命令匹配TS文件,示例:eslint --fix "**/*.{js,ts,tsx}" - 编辑器格式化配置异常:如果使用编辑器自动格式化能力,需确认TS文件的默认格式化工具已设置为Prettier或ESLint,避免调用编辑器原生格式化逻辑。
- TS文件语法解析失败:可以单独对单个TS文件执行ESLint检查,确认是否存在语法错误导致解析中断,Prettier会自动跳过解析失败的文件:
eslint your-file-path.ts
内容的提问来源于stack exchange,提问作者Igor
相关产品推荐
相关产品推荐

