[英]How can I tell prettier to parse files recursively?
我想請prettier遞歸地解析我的 JavaScript 文件,而不是指定它應該檢查文件的每個文件夾。
我想做類似的事情:
prettier --write "all_js_files_except_node_modules_folder"
我在他們的文檔中找不到太多內容。 有什么建議么?
幾周前的這個問題似乎回答了您的問題。 特爾;博士:
prettier "{,!(node_modules)/**/}*.js"
只需運行prettier --write .
並使用.prettierignore
文件告訴它要忽略什么,但默認情況下它會忽略node_modules
。
如果你像我一樣,你沒有意識到目標文件使用了 globs 格式。
您可以在此處閱讀更多相關信息。 (檢查有關特殊字符的說明)。 如果您想了解更多信息,請在此處查看: http : //tldp.org/LDP/abs/html/globbingref.html
我的文件夾結構:
components/
pages/
node_modules/
package.json
server.js
我想忽略package.json
和node_modules/
。 我用這個命令解決了我的需求:
prettier --write "{*.js,!(node*)**/*.js}"`
{}
是一種擴展機制,允許我使用多個過濾條件。 就我而言,有 2 個:
1: *.js
: 定位執行命令的根目錄下的所有JS文件
2: !(node*)**/*.js
: target所有文件夾和子文件夾中的所有JS文件(遞歸部分使用**
獲得)
對於需要簡單示例(沒有括號or
s 等)的剪切和粘貼,這可能是一個有用的 globs 示例:
prettier --write "app/**/*.ts"
美化app
目錄及以下的每個*.ts
文件。
這個解決方案最適合我。 這是我發現的唯一一種無論嵌套如何都會命中每個文件的方法:
package.json
"scripts": {
"format": "prettier --write {,*/**/}*.{js,jsx,json}",
},
.prettierignore
node_modules
build
我的問題是我必須添加引號
package.json 的某處
"format": "prettier --write \"src/**/*.ts\""
添加為 npm 腳本對我有用:
它將遞歸修復以下文件。 ext使用在prettierrc
文件中定義的以下規則集。
重要: .<擴展名 || MULTIPLE_EXTENSIONS> 例如'./src/**/*.{js,jsx,scss,md,json}'(包括所有文件和文件夾)
{
"name": "compentence-journey",
"version": "0.1.0",
"private": true,
"scripts": {
"prettier.fix": "prettier --check --write './src/**/*.{js,jsx,scss,md,json}'",
},
...
}
{
"trailingComma": "es5",
"tabWidth": 4,
"semi": false,
"singleQuote": true
}
/config
# Dependency directories
node_modules/
# Publish Directory
build/
# Root level folders/files
/package.json
如果您希望擴展 glob 在package.json
文件中遞歸工作,則需要額外的引號。
....
"scripts": {
....
"format": "prettier './**/*.ts' --write --ignore-path ./.gitignore"
},
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.