CLI 命令
你可以使用 Astro 提供的命令行界面 (CLI) 从终端窗口开发、构建和预览你的项目。
astro
命令
段落标题 astro 命令通过使用你喜欢的包管理器运行此页面上记录的命令之一来使用 CLI,可选择后跟任何标志。标志可以自定义命令的行为。
你最常使用的命令之一是 astro dev
。这个命令启动开发服务器,并在浏览器中为你提供一个实时更新的网站预览,以便你在工作时查看。
你可以在终端中输入 astro --help
来显示所有可用命令的列表:
下面的消息将在你的终端中显示:
你可以在任何命令后添加 --help
标志,以获取该命令的所有标志的列表。
下面的消息将在你的终端中显示:
你需要在标志前添加 --
才能让 npm
把这些标志传递给 astro
命令。
package.json
脚本
段落标题 package.json 脚本你也可以在 package.json
中使用脚本来使用这些命令的简短版本。使用脚本允许你使用来自其他项目的相同命令,例如 npm run build
。
当你使用 create astro
向导 创建项目时,以下脚本是为你自动添加的,用于最常用的 astro
命令(astro dev
、astro build
和 astro preview
)。
当你按照手动安装 Astro 的说明进行操作时,你会被告知自己添加这些脚本。你还可以手动为任何你经常使用的命令添加更多脚本到这个列表中。
你经常会使用这些 astro
命令,或者运行它们的脚本,而不带任何标志。当你想要自定义命令的行为时,可以向命令添加标志。例如,你可能希望在不同的端口上启动开发服务器,或者使用详细日志构建站点以进行调试。
astro dev
段落标题 astro dev运行 Astro 的开发服务器。这是一个不打包资源的本地 HTTP 服务器。当你在编辑器中保存更改时,它使用热模块替换 (HMR) 来更新你的浏览器。
astro build
段落标题 astro build构建你的网站以进行部署。默认情况下,这将生成静态文件并将它们放在 dist/
目录中。如果有任何路由是按需渲染 (EN)的,这将生成必要的服务器文件为你的网站提供服务。
标志
段落标题 标志该命令接受 通用标志 和以下额外标志:
--devOutput
段落标题 --devOutput
Added in:
astro@5.0.0
输出基于开发的构建,类似于在 astro dev
中转换的代码。这对于测试仅在构建时出现的问题并包含额外的调试信息非常有用。
astro preview
段落标题 astro preview启动一个本地服务器,用于提供由运行 astro build
创建的静态目录(默认为 dist/
)的内容。
该命令允许你在部署之前构建本地预览你的网站,以便在构建输出中捕获任何错误。它不是为在生产环境中运行而设计的。有关生产托管的帮助,请查看我们的部署 Astro 网站指南。
从 Astro 1.5.0 开始,Node 适配器 支持按需渲染构建生成的 astro preview
。
可以与下面文档的通用标志结合使用。
astro check
段落标题 astro check对项目进行检测(比如对 .astro
文件进行类型检查),并向控制台输出错误信息。如果发现任何错误,该进程将以 1 代码退出。
该命令旨在用于 CI 工作流程。
标志
使用这些标志来自定义命令的行为。
--watch
段落标题 --watch该命令将监听你项目中的任何更改,并报告任何错误。
--root <path-to-dir>
段落标题 --root <path-to-dir>指定一个不同的根目录进行检查。默认使用当前工作目录。
--tsconfig <path-to-file>
段落标题 --tsconfig <path-to-file>指定手动使用的 tsconfig.json
文件。如果未提供,Astro 将尝试找到配置,或自动推断项目的配置。
--minimumFailingSeverity <error|warning|hint>
段落标题 --minimumFailingSeverity <error|warning|hint>指定退出并返回错误代码所需的最低严重性级别。默认为 error
。
例如,运行 astro check --minimumFailingSeverity warning
会在检测到任何警告时使命令退出并报错。
--minimumSeverity <error|warning|hint>
段落标题 --minimumSeverity <error|warning|hint>指定要输出的最低严重性级别。默认为 hint
。
例如,运行 astro check --minimumSeverity warning
将显示错误和警告,但不显示提示。
--preserveWatchOutput
段落标题 --preserveWatchOutput指定在监听模式下,不清除检查之间的输出。
--noSync
段落标题 --noSync指定在检查项目之前,不运行 astro sync
。
astro sync
段落标题 astro sync
Added in:
astro@2.0.0
运行 astro dev
,astro build
或者astro check
也会运行sync
命令。
为所有 Astro 模块生成 TypeScript 类型。这会为类型推断设置一个.astro/types.d.ts
文件,并为依赖于生成类型的特性定义模块:
astro:content
模块用于 内容集合 API。astro:db
模块用于 Astro DB。astro:env
模块用于 Astro Env。astro:actions
模块用于 Astro Actions。
astro add
段落标题 astro add将集成添加到你的配置中。在集成指南中阅读更多信息。
astro docs
段落标题 astro docs直接从终端启动 Astro Docs 网站。
astro info
段落标题 astro info显示当前 Astro 环境的有用信息,以便在提交 issue 时提供信息。
输出示例:
astro preferences
段落标题 astro preferences使用 astro preferences
命令管理用户偏好。用户偏好是特定于单个 Astro 用户的,不像 astro.config.mjs
文件,它会改变所有项目的所有人的行为。
默认情况下,用户偏好是针对当前项目的,存储在本地的 .astro/settings.json
文件中。
使用 --global
标志,用户偏好也可以应用于当前机器上的每个 Astro 项目。全局用户偏好存储在特定于操作系统的位置。
可配置的偏好设置
devToolbar
— 在浏览器中启用或禁用开发工具栏。(默认值:true
)checkUpdates
— 启用或禁用 Astro CLI 的自动更新检查。(默认值:true
)
list
命令打印所有可配置用户偏好的当前设置。它还支持机器可读的 --json
输出格式。
终端输出示例:
Preference | Value |
---|---|
devToolbar.enabled | true |
checkUpdates.enabled | true |
你可以通过 enable
、disable
或 reset
命令来启用、禁用或重置偏好设置至默认值。
举个例子,要在特定的 Astro 项目中禁用 devToolbar:
要在当前机器上的所有 Astro 项目中禁用 devToolbar:
稍后可以使用以下命令启用 devToolbar:
reset
命令将偏好重置为其默认值:
astro telemetry
段落标题 astro telemetry为当前 CLI 用户设置遥测配置。遥测是匿名数据,可让 Astro 团队深入了解最常使用哪些 Astro 功能。有关更多信息,请参阅 Astro 的遥测页面。
可以通过这个 CLI 命令禁用遥测:
后面也可以随时通过以下方式重新启用遥测:
使用 reset
命令重置遥测数据:
将 astro telemetry disable
命令添加到你的 CI 脚本或设置 ASTRO_TELEMETRY_DISABLED
环境变量。
通用标志
段落标题 通用标志--root <path>
段落标题 --root <path>指定项目根目录的路径。如果不指定,则假定当前工作目录为根目录。
根目录是用来寻找 Astro 配置文件的。
--config <path>
段落标题 --config <path>指定配置文件的路径。默认为 astro.config.mjs
。如果使用了不同的配置文件名称或放在其他文件夹中,请使用:
--mode <string>
段落标题 --mode <string>
Added in:
astro@5.0.0
为你的项目配置 mode
(EN) 行内配置。
--outDir <path>
段落标题 --outDir <path>
Added in:
astro@3.3.0
为你的项目配置 outDir
。传递此标志将覆盖 astro.config.mjs
文件中的 outDir
值(如果存在)。
--site <url>
段落标题 --site <url>为你的项目配置 site
。传递此标志将覆盖 astro.config.mjs
文件中的 site
值(如果存在)。
--base <pathname>
段落标题 --base <pathname>
Added in:
astro@1.4.1
为你的项目配置 base
。传递此标志将覆盖 astro.config.mjs
文件中的 base
值(如果存在)。
--port <number>
段落标题 --port <number>指定运行开发服务器和预览服务器的端口。默认为 4321
。
--host [optional host address]
段落标题 --host [optional host address]设置开发服务器和预览服务器应监听的网络 IP 地址(即非 localhost IP)。这在开发过程中对于在本地设备(如手机)上测试你的项目非常有用。
--host
— 在所有地址上监听,包括 LAN 和公共地址--host <custom-address>
— 在<custom-address>
的网络 IP 地址上公开
不要在生产环境中使用 --host
标志来公开开发服务器和预览服务器。这些服务器仅设计用于在开发你的网站时本地使用。
--verbose
段落标题 --verbose启用完整日志,调试时有用。
--silent
段落标题 --silent启用静默日志,当你不想看到 Astro 日志时有用。
--open
段落标题 --open在服务器启动时自动在浏览器中打开应用程序。可以传递完整的 URL 字符串 (例如 --open http://example.com
) 或路径名 (例如 --open /about
) 来指定要打开的 URL。
全局标志
段落标题 全局标志使用这些标志获取有关 astro
CLI 的信息。
--version
段落标题 --version打印 Astro 版本号并退出。
--help
段落标题 --help打印帮助信息并退出。
Reference