如何告诉更漂亮的递归解析文件?

Pau*_*aul 16 javascript prettier

我想要更漂亮地递归解析我的JavaScript文件,而不是指定它应该检查文件的每个文件夹.

我想做点什么:

prettier --write "all_js_files_except_node_modules_folder"

我对他们的文档没有太多了解.有什么建议?

谢谢,保罗

Joe*_*lay 22

几个星期前的这个问题似乎回答了你的问题.TL; DR:

prettier "{,!(node_modules)/**/}*.js"
Run Code Online (Sandbox Code Playgroud)


ruf*_*fin 7

如何递归运行(回答问题的标题

\n

对于来这里寻找一个简单示例(没有括号、ors 等)来回答标题中问题的剪切和粘贴者,以下可能是一个有用的 glob 示例:

\n

prettier --write "app/**/*.ts"

\n

*.ts该命令以递归方式对该目录下的所有文件运行 prettier app

\n
\n

如何忽略文件夹[递归运行时](回答问题的详细信息

\n

作为 \xd7\xa0\xd7\xa9\xd7\x9e\xd7\x94 \xd7\xa7\xd7\xa9\xd7\x95\xd7\x97\xd7\x94 (坚韧的灵魂?)所指出的,从命令行更漂亮已经忽略node_modules文件夹

\n
\n

Prettier CLI 将忽略位于node_modules目录中的文件。要选择退出此行为,请使用--with-node-modules标志。

\n
\n

如果你想忽略另一个文件夹,soul 再次提出了正确的想法,建议使用.prettierignore 文件,该文件将由 CLI 使用。

\n

包括...

\n
**/folderToIgnore\n
Run Code Online (Sandbox Code Playgroud)\n

...在您的.prettierignore注意前面.!!!.prettierignore文件中忽略具有该名称的每个文件夹folderToIgnore文件夹,无论路径如何。

\n

只要.prettierignore位于同一个文件夹文件路径的上游,就应该没问题,但如果有多个,请注意交互.prettierignores,请注意交互。

\n


ᆼᆺᆼ*_*ᆼᆺᆼ 6

赶紧跑 prettier --write .

并使用.prettierignore文件告诉它要忽略什么,但node_modules默认情况下它会忽略。


Pau*_*aul 5

如果您像我一样,则不会意识到目标文件使用了globs格式。

您可以在此处了解更多信息。(检查有关特殊字符的说明)。如果您想了解更多信息,请点击此处:参见 http //tldp.org/LDP/abs/html/globbingref.html

我的文件夹结构:

components/
pages/
node_modules/
package.json    
server.js
Run Code Online (Sandbox Code Playgroud)

我想忽略package.jsonnode_modules/。我通过以下命令解决了我的需求:

prettier --write "{*.js,!(node*)**/*.js}"`
Run Code Online (Sandbox Code Playgroud)

{}是一种扩展机制,使我可以使用多个过滤条件。就我而言:

1::*.js将执行命令的根目录中的所有JS文件作为目标

2 ::!(node*)**/*.js将所有文件夹和子文件夹中的所有JS文件作为目标(递归部分是使用来获得的**