preview 不会编译你的项目。它会加载一个已存在的未打包扩展根目录,并运行浏览器启动流程。
什么时候使用 preview
- 想运行已有的构建输出,而不重新构建。
- 快速对比已打包行为在多个浏览器目标上的表现。
- 调试与生产产物相关、而非与 dev / watch 模式相关的运行时问题。
preview 命令的能力
preview是 run-only 的。它会优先使用已存在的dist/<browser>。你也可以让它指向其他已包含manifest.json的未打包扩展文件夹。
用法
preview 如何决定运行哪个目录
preview 按以下顺序检查:
- 所选浏览器目标对应的
dist/<browser>。 - 提供的项目路径或当前工作目录。
manifest.json 的未打包扩展。是否在同一条命令里跑过 build 并不重要。
参数与 flag
自动化元数据
preview 会把就绪元数据写入:
dist/extension-js/<browser>/ready.json
--no-browser 流程,它提供了确定性的命令状态:
- 命令初始化时为
starting - run-only 验证完成时为
ready - 缺少所需输出或启动失败时为
error runId与startedAt用于在脚本 / agent 中做会话关联
preview 不提供 --wait 闸门 flag。preview 的自动化请直接消费 ready.json。
日志 flag
共享的全局选项
也支持 全局 flag。示例
预览一个本地扩展
在 Edge 与 Chrome 中预览
不启动浏览器进行预览
行为说明
preview是 run-only 的,永远不会编译项目。preview优先使用已有的构建输出(dist/<browser>),但也可以回落到另一个未打包扩展根目录。preview不会运行 watch 模式,也不提供热模块替换(HMR)。- 对于脚本 / agent,请依赖
ready.json,避免解析终端输出。
最佳实践
- 测试新鲜的生产产物时,先跑
build再跑preview。 - 当你的未打包扩展位于默认项目输出之外时,请传入项目路径参数。
- 打包前用
--browser在多个目标上验证行为。
下一步
- 一步构建并启动:用
start。 - 生成生产产物:用
build。 - 在
extension.config.js中集中配置共享默认值。 - 在 环境变量 中查看配置期 env 加载行为。

