.flowconfig [忽略]
.flowconfig
檔案中的 [ignore]
區段會指示 Flow 在類型檢查程式碼時忽略符合指定正規表示式的檔案。預設情況下,不會忽略任何檔案。
注意事項
- 這些是 OCaml 正規表示式。
- 這些正規表示式會與絕對路徑進行比對。它們可能應該以
.*
開頭 - 忽略會在包含之後處理。如果您同時包含和忽略檔案,該檔案將會被忽略。
範例 [ignore]
區段可能如下所示
[ignore]
.*/__tests__/.*
.*/src/\(foo\|bar\)/.*
.*\.ignore\.js
此 [ignore]
區段將會忽略
- 名為
__tests__
的目錄下的任何檔案或目錄 .*/src/foo
或.*/src/bar
下的任何檔案或目錄- 任何以
.ignore.js
為副檔名的檔案
您可以在正規表示式中使用 <PROJECT_ROOT>
佔位符。在執行階段,Flow 會將佔位符視為專案根目錄的絕對路徑。這對於撰寫相對於絕對路徑的正規表示式非常有用。
例如,您可以撰寫
[ignore]
<PROJECT_ROOT>/__tests__/.*
這將忽略專案根目錄下名為 __tests__/
的目錄下的任何檔案或目錄。不過,與前一個範例的 .*/__tests__/.*
不同,它不會忽略名為 __tests__/
的其他目錄下的檔案或目錄,例如 src/__tests__/
。
排除
有時您可能想要忽略目錄中的所有檔案,但少數檔案例外。一個用於否定模式的選用前綴「!」可能有所幫助。這樣一來,任何與先前模式相符而被排除的檔案都將再次包含。
[ignore]
<PROJECT_ROOT>/node_modules/.*
!<PROJECT_ROOT>/node_modules/not-ignored-package-A/.*
!<PROJECT_ROOT>/node_modules/not-ignored-package-B/.*