跳到主要內容

Flow CLI

flow 命令列工具旨在讓使用者在簡單的情況下也能輕鬆使用。

使用指令 flow 會在 .flowconfig 檔案存在時,對目前的目錄進行型別檢查。如有需要,會自動啟動 flow 伺服器。

CLI 工具也提供多個其他選項和指令,讓你可以控制伺服器和與 Flow 整合的建置工具。例如,這是 Nuclide 編輯器如何與 Flow 整合,在使用者介面中提供自動完成、型別錯誤等功能。

若要進一步了解 CLI,只需輸入

flow --help

這會提供有關 flow 所有功能的資訊。執行此指令應該會印出類似這樣的內容

Usage: flow [COMMAND] [PROJECT_ROOT]

Valid values for COMMAND:
ast Print the AST
autocomplete Queries autocompletion information
batch-coverage Shows aggregate coverage information for a group of files or directories
check Does a full Flow check and prints the results
check-contents Run typechecker on contents from stdin
config Read or write the .flowconfig file
coverage Shows coverage information for a given file
cycle Output .dot file for cycle containing the given file
find-module Resolves a module reference to a file
find-refs Gets the reference locations of a variable or property
force-recheck Forces the server to recheck a given list of files
get-def Gets the definition location of a variable or property
graph Outputs dependency graphs of flow repositories
init Initializes a directory to be used as a flow root directory
ls Lists files visible to Flow
lsp Acts as a server for the Language Server Protocol over stdin/stdout [experimental]
print-signature Prints the type signature of a file as extracted in types-first mode
server Runs a Flow server in the foreground
start Starts a Flow server
status (default) Shows current Flow errors by asking the Flow server
stop Stops a Flow server
type-at-pos Shows the type at a given file and position
version Print version information

Default values if unspecified:
COMMAND status
PROJECT_ROOT current folder

Status command options:
--color Display terminal output in color. never, always, auto (default: auto)
--from Specify client (for use by editor plugins)
--help This list of options
--json Output results in JSON format
--no-auto-start If the server is not running, do not start it; just exit
--old-output-format Use old output format (absolute file names, line and column numbers)
--one-line Escapes newlines so that each error prints on one line
--quiet Suppresses the server-status information that would have been printed to stderr
--retries Set the number of retries. (default: 3)
--show-all-errors Print all errors (the default is to truncate after 50 errors)
--strip-root Print paths without the root
--temp-dir Directory in which to store temp files (default: /tmp/flow/)
--timeout Maximum time to wait, in seconds
--version Print version number and exit

自訂專案根目錄範例

mydir
├── frontend
│ ├── .flowconfig
│ └── app.js
└── backend
flow check frontend

然後,你可以透過新增 --help 旗標,進一步深入探討特定 COMMAND。

因此,例如,如果你想進一步了解自動完成如何運作,你可以使用這個指令

flow autocomplete --help