首页 > 解决方案 > 为什么 Prettier 不格式化 .ts 文件之一?

问题描述

在 Visual Studio Code 中,根据 Prettier 日志,格式化已完成,但相关文件未更改。

["INFO" - 8:03:25 AM] Prettier Options:
{
  "filepath": "/path/to/project/src/test/index.ts",
  "parser": "typescript",
  "useTabs": false,
  "tabWidth": 2,
  "endOfLine": "lf",
  "printWidth": 80,
  "semi": false,
  "trailingComma": "es5"
}
["INFO" - 8:03:25 AM] Formatting completed in 466.936538ms.

保存前后的文件内容(摘录)

'use strict'

import dotenv from 'dotenv';

保存后的预期文件内容(摘录)

"use strict"

import dotenv from "dotenv"

这是我的 Prettier 部分package.json

"prettier": {
  "endOfLine": "lf",
  "printWidth": 80,
  "semi": false,
  "tabWidth": 2,
  "trailingComma": "es5"
}

项目中的所有其他文件在保存时似乎都已正确格式化。

标签: typescriptprettier

解决方案


找到罪魁祸首!

Visual Studio Code 有一个默认设置为毫秒的editor.formatOnSaveTimeout 设置750

以毫秒为单位的超时,在此之后在文件保存时运行的格式化被取消。

Prettier 没有足够的时间来格式化我的超过 2,000 行的文件。

我切换editor.formatOnSaveTimeout1500它,它工作!


推荐阅读