如何在 Prettier 中使用具有多个扩展名的文件?

Posted

技术标签:

【中文标题】如何在 Prettier 中使用具有多个扩展名的文件?【英文标题】:How to use files with multiple extensions with Prettier? 【发布时间】:2017-11-27 05:02:55 【问题描述】:

我有以下Prettier 命令:

prettier --parser typescript --write ./src/**/*.ts
prettier --parser typescript --write ./src/**/*.tsx

我想将它们合并为一个 - 使用一些正则表达式之王在 .ts.tsx 扩展上收听(写入)。

类似:

prettier --write ./src/**/*.ts(x?)

【问题讨论】:

【参考方案1】:

刚刚找到解决方案。以下命令将同时针对 tstsx

prettier --write "./src/**/*.ts,tsx"

Prettier 使用 Glob 语法,该语法类似于 Regex,用于 shell。

查看 GLOB 语法详情:https://github.com/isaacs/node-glob/blob/master/README.md#glob-primer

【讨论】:

你确定不是你的 shell 扩展了那个 glob 模式吗? Hmm.. 也许没有" " 会直接使用shell? github.com/prettier/prettier#cli 但我在 Windows 上,所以不确定.. 如果您能提供更好的解释,我们将不胜感激,我可能会接受您的回答。或者只是编辑.. 啊,在 Windows 中它的工作方式可能不同。无论如何,它并不真正相关,因为它正在工作:D 是的,它现在正在工作,但总是很高兴知道解释为什么.. 如果它是由 shell 扩展的 - 而不是 glob lib,它会有很大的不同 - 即使它只在类 Unix 系统上完成.. 您可以尝试在它周围加上引号。如果它仍然有效,那就是 prettier 进行扩展。在 Unix 上,你也可以尝试echo ./src/**/*.ts,tsx 看看 shell 是如何扩展它的,也许在 Windows 上也可以。【参考方案2】:

如果您想在具有多个扩展名的多个路径上运行更漂亮的命令,请使用以下命令:

prettier --write "src/**/*.ts,tsx,js,jsx" "pages/**/*.ts,tsx,js,jsx" "server/**/*.js"

【讨论】:

以上是关于如何在 Prettier 中使用具有多个扩展名的文件?的主要内容,如果未能解决你的问题,请参考以下文章

如何制作一个批处理脚本来创建指定数量的具有随机名称和指定扩展名的文件? [复制]

如何在perl中验证具有给定文件扩展名的多个文件

如何使 prettier 成为 vs 代码中的默认格式化程序?

如何使用 typescript 同步 eslint 或设置类似的 tslint 和 prettier?

如何使用 Python 计算目录中的文件数

使用 airbnb 和 prettier 扩展的 ESLint 配置,用于使用 typescript、jest 和 react-hooks 的 react 项目