如何从 prettier 中忽略 node_modules

How to ignore node_modules from prettier

为了美化目的使用pretty-quick

更漂亮的配置和 Eslint 规则正在影响 node_modules。所以,想跳过它。

因此,尝试创建其中定义了 node_modules 的 .prettierignore 文件

具有如下配置设置规则:

"lint": "pretty-quick & eslint "src/**/*.{js,jsx}" --quiet --fix"

给出错误为:

SyntaxError: Nested mappings are not allowed in compact mappings (8:9)
  6 | artifact: 'file://dcs.tar.gz'
  7 | deploymentStrategy: default
> 8 | config: artifact:
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 9 |
    | ^
    at e (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/prettier/parser-yaml.js:1:323)
    at Object.parse (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/prettier/parser-yaml.js:1:156977)
    at Object.parse [as parse] (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/prettier/index.js:7138:19)
    at coreFormat (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/prettier/index.js:10398:23)
    at format (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/prettier/index.js:10570:16)
    at formatWithCursor (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/prettier/index.js:10582:12)
    at /Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/prettier/index.js:34924:15
    at format (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/prettier/index.js:34943:12)
    at exports.default (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/pretty-quick/dist/formatFiles.js:18:41)
    at exports.default (/Users/mithha/Documents/dcs/ui/ui-plugins/dcs/node_modules/pretty-quick/dist/index.js:54:29)
✨  Done in 4.19s.

也试过这样配置:

"lint": "pretty-quick --ignore-path=.prettierignore & eslint \"src/**/*.{js,jsx}\" --quiet --fix"

但运气不好。

根据npm包的描述,prettier会忽略你在.prettierrc.prettierignore.editorconfig.

中写路径的文件

如果您想了解更多,请查看下面的内容。

https://www.npmjs.com/package/pretty-quick#configuration-and-ignore-files

.eslintignore 文件中,添加以下行:

/node_modules/

我们只能通过将 --staged 传递给现有命令来对暂存文件进行更改,如下所示是我目前想出的唯一解决方案。

"lint": "pretty-quick --staged & eslint "src/**/*.{js,jsx}" --quiet --fix"

Prettier 的 CLI 默认忽略 node_modules。