跳至主内容区

忽略代码

非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

使用 .prettierignore 文件可以完全忽略(即不重新格式化)特定文件和文件夹。

使用 "prettier-ignore" 注释可忽略文件的特定部分。

忽略文件:.prettierignore

要排除某些文件不被格式化,请在项目根目录创建 .prettierignore 文件。.prettierignore 使用 gitignore 语法

示例:

# Ignore artifacts:
build
coverage

# Ignore all HTML files:
**/*.html

建议在项目中创建 .prettierignore 文件!这样您可以运行 prettier --write . 确保所有内容都被格式化(不会破坏不想修改的文件,也不会因生成文件而中断)。同时——您的编辑器也能识别哪些文件不需要格式化!

默认情况下,Prettier 会忽略版本控制系统目录(".git"、".jj"、".sl"、".svn" 和 ".hg")和 node_modules 中的文件(除非指定了 --with-node-modules CLI 选项)。如果运行目录中存在 ".gitignore" 文件,Prettier 也会遵循其中的规则。

因此默认配置为:

**/.git
**/.svn
**/.hg
**/node_modules

以及

**/.git
**/.svn
**/.hg

当提供 --with-node-modules CLI 选项

(另请参阅 --ignore-path CLI 选项。)

JavaScript

JavaScript 的 // prettier-ignore 注释将排除抽象语法树中的下一个节点不被格式化。

例如:

matrix(
1, 0, 0,
0, 1, 0,
0, 0, 1
)

// prettier-ignore
matrix(
1, 0, 0,
0, 1, 0,
0, 0, 1
)

将被转换为:

matrix(1, 0, 0, 0, 1, 0, 0, 0, 1);

// prettier-ignore
matrix(
1, 0, 0,
0, 1, 0,
0, 0, 1
)

JSX

<div>
{/* prettier-ignore */}
<span ugly format='' />
</div>

HTML

<!-- prettier-ignore -->
<div class="x" >hello world</div >

<!-- prettier-ignore-attribute -->
<div
(mousedown)=" onStart ( ) "
(mouseup)=" onEnd ( ) "
></div>

<!-- prettier-ignore-attribute (mouseup) -->
<div
(mousedown)="onStart()"
(mouseup)=" onEnd ( ) "
></div>

CSS

/* prettier-ignore */
.my ugly rule
{

}

Markdown

<!-- prettier-ignore -->
Do not format this

范围忽略

自 v1.12.0 起可用

此类忽略仅允许在顶层使用,旨在禁用自动生成内容的格式化,例如 all-contributorsmarkdown-toc 等。

<!-- prettier-ignore-start -->
<!-- SOMETHING AUTO-GENERATED BY TOOLS - START -->

| MY | AWESOME | AUTO-GENERATED | TABLE |
|-|-|-|-|
| a | b | c | d |

<!-- SOMETHING AUTO-GENERATED BY TOOLS - END -->
<!-- prettier-ignore-end -->

重要: 必须在 <!-- prettier-ignore-start --><!-- prettier-ignore-end --> 前保留空行,Prettier 才能识别这些注释。

YAML

要忽略 YAML 文件的某部分,应在被忽略节点的上一行放置 # prettier-ignore

# prettier-ignore
key : value
hello: world

GraphQL

{
# prettier-ignore
addReaction(input:{superLongInputFieldName:"MDU6SXNzdWUyMzEzOTE1NTE=",content:HOORAY}) {
reaction {content}
}
}

Handlebars

{{! prettier-ignore }}
<div>
"hello! my parent was ignored"
{{#my-crazy-component "shall" be="preserved"}}
<This
is = "also preserved as is"
/>
{{/my-crazy-component}}
</div>

命令行文件模式

对于一次性命令,当您想排除某些文件而不将其添加到 .prettierignore 时,负向模式非常有用:

prettier . "!**/*.{js,jsx,vue}" --write

有关高级 glob 语法的更多信息,请参阅 fast-glob