CLI

parcel CLI 是使用 Parcel 的最常见方式。它支持三种不同的命令:servewatchbuild

¥The parcel CLI is the most common way to use Parcel. It supports three different commands: serve, watch, and build.

parcel [serve] <entries>

#

serve 命令启动一个开发服务器,它会在你更改文件时自动重建你的应用,并支持 热重载。它接受一个或多个文件路径或 glob 作为 入口serve 是默认命令,因此也可以通过将入口直接传递到 parcel 来使用它。

¥The serve command starts a development server, which will automatically rebuild your app as you change files, and supports hot reloading. It accepts one or more file paths or globs as entries. serve is the default command, so it may also be used by passing entries directly to parcel.

parcel src/index.html

注意:如果你指定了多个 HTML 入口点,并且没有一个入口点具有输出路径 /index.html,则开发服务器将以 404 响应 http://localhost:1234/,因为 Parcel 不知道哪个 HTML 包是索引。

¥Note: If you have specified multiple HTML entry points and none of them has the output path /index.html, the dev server will respond to http://localhost:1234/ with a 404, since Parcel doesn't know which HTML bundle is the index.

在这种情况下,直接加载文件,例如 http://localhost:1234/a.htmlhttp://localhost:1234/b.html

¥In this case, load the file directly, e.g. http://localhost:1234/a.html and http://localhost:1234/b.html.

详细信息请参见 开发

¥See Development for more details.

parcel watch <entries>

#

watch 命令与 serve 类似,但不启动开发服务器(仅启动 HMR 服务器)。但是,它会在你进行更改时自动重建你的应用,并支持 热重载。如果你正在构建库、后端或拥有自己的开发 (HTTP) 服务器,请使用 watch。有关如何指定入口的信息,请参阅 below

¥The watch command is similar to serve, but does not start a dev server (only a HMR server). However, it automatically rebuilds your app as you make changes, and supports hot reloading. Use watch if you're building a library, a backend, or have your own dev (HTTP) server. See below for how to specify entries.

parcel watch src/index.html

parcel build <entries>

#

build 命令执行单个生产构建并退出。默认情况下,这会启用 作用域提升 和其他生产优化。有关如何指定入口的信息,请参阅 below

¥The build command performs a single production build and exits. This enables scope hoisting and other production optimizations by default. See below for how to specify entries.

parcel build src/index.html

详细信息请参见 生产

¥See Production for more details.

入口

#

¥Entries

所有 Parcel 命令都接受一个或多个入口。入口可以是相对路径、绝对路径或全局路径。它们也可能是包含 package.jsonsource 字段的目录。如果完全省略入口,则使用当前工作目录中 package.json 中的 source 字段。有关更多详细信息,请参阅目标文档中的 入口

¥All Parcel commands accept one or more entries. Entries may be relative or absolute paths, or globs. They may also be directories containing a package.json with a source field. If entries are omitted entirely, the source field in the package.json in the current working directory is used. See Entries in the Targets documentation for more details.

注意:请务必将 glob 括在单引号中,以确保它们不会被你的 shell 解析并直接传递到 Parcel。这确保了 Parcel 可以自动拾取新创建的与 glob 匹配的文件,而无需重新启动。

¥Note: Be sure to wrap globs in single quotes to ensure that they are not resolved by your shell and are passed to Parcel directly. This ensures that Parcel can automatically pick up newly created files matching globs without needing to restart.

# Single file
parcel src/index.html

# Multiple files
parcel src/a.html src/b.html

# Glob (quotes required)
parcel 'src/*.html'

# Directory with package.json#source
parcel packages/frontend

# Multiple packages with a glob
parcel 'packages/*'

# Current directory with package.json#source
parcel

参数

#

¥Parameters

所有 Parcel 命令都支持这些参数。

¥These parameters are supported by all Parcel commands.

格式 描述
--target [name] 指定要构建的目标。可以指定多次。参见 目标
--dist-dir <dir> 目标未指定时要写入的输出目录。
package.json targetsdistDir 选项的默认值。
--public-url <url> 绝对 URL 的路径前缀。
package.json targetspublicUrl 选项的默认值。
--no-source-maps 禁用源映射,
覆盖 package.json targets 中的 sourceMap 选项。
--config <path> 指定要使用的 Parcel 配置。
可以是文件路径或包名称。默认为 @parcel/config-default。参见 Parcel 配置
--reporter <package name> 除了 .parcelrc.conf 中指定的插件之外,还运行指定的报告插件。可以指定多次。
--log-level (none/error/warn/info/verbose) 设置日志级别。
--cache-dir <path> 设置缓存目录。默认为 .parcel-cache。参见 缓存
--no-cache 禁用从文件系统缓存读取。参见 缓存
--profile 在构建期间运行 CPU 采样配置文件(可以生成火焰图)。
--trace 在构建期间运行 trace
-V, --version 输发布本号。

servewatch 特有的参数

#

¥Parameters specific to serve and watch

格式 描述
-p, --port <port> 开发服务器和 HMR 的端口(默认端口为 process.env.PORT 或 1234)。参见 开发服务器
--host <host> 设置监听的主机,默认监听所有接口。
--https 通过 HTTPS 运行开发服务器和 HMR 服务器。
--cert <path> 要使用的证书的路径。参见 HTTPS
--key <path> 要使用的私钥的路径。参见 HTTPS
--no-hmr 禁用 热重载
--hmr-port <port> HMR 服务器的端口(默认为开发服务器的端口)。参见 热重载
--hmr-host <host> HMR 服务器的主机(默认为开发服务器的主机)。参见 热重载
--no-autoinstall 禁用 自动安装
--watch-dir 设置根监视目录。对于在子项目中具有锁定文件的 monorepos 很有用。
--watch-for-stdin stdin 关闭后停止 Parcel。

serve 特有的参数

#

¥Parameters specific to serve

格式 描述
--open [browser] 自动在浏览器中打开该入口。默认为默认浏览器。参见 开发服务器
--lazy 仅构建开发服务器请求的包。参见 惰性模式

build 特有的参数

#

¥Parameters specific to build

格式 描述
--no-optimize 禁用缩小等优化。
覆盖 package.json targetsoptimize 选项。参见 生产
--no-scope-hoist 禁用作用域提升。
覆盖 package.json targetsscopeHoist 选项。参见 作用域提升
--no-content-hash 禁用输出文件名的内容哈希。
打包包名称可能仍包含哈希值,但它们不会在每次构建时更改。参见 内容哈希
--detailed-report [depth] 在 CLI 报告中显示每个打包包最大的 10 个(可通过 depth 配置的数量)资源。参见 详细报告
Parcel 中文网 - 粤ICP备13048890号