开发服务器 (Dev Server)
当您需要由 zero-native 来接管前端服务器的生命周期时,请使用 zero-native dev。它会启动配置好的前端进程,等待端口接受连接,然后带上环境变量 ZERO_NATIVE_FRONTEND_URL 启动原生外壳(Shell),设置 ZERO_NATIVE_HMR=1,最后在原生外壳退出时终止前端进程。由于 WebView 直接加载了开发服务器的 URL,因此框架的模块热替换(HMR)仍由前端开发服务器(Vite、Next.js 等)自身来掌管。
使用方法 (Usage)
bash
zero-native dev --binary zig-out/bin/MyApp
zero-native dev --binary zig-out/bin/MyApp --url http://127.0.0.1:3000/ --command "npm run dev"
zero-native dev --binary zig-out/bin/MyApp --timeout-ms 60000参数标志 (Flags)
| 参数 | 描述 |
|---|---|
--manifest | 指向 app.zon 清单文件的路径(默认是 app.zon) |
--binary | 编译好的原生二进制文件路径 |
--url | 覆盖 app.zon 中配置的前端开发服务器 URL |
--command | 覆盖 app.zon 中配置的前端开发服务器启动命令 |
--timeout-ms | 覆盖开发服务器就绪的超时时间(默认使用 app.zon 中的值) |
在 app.zon 中配置
zig
.frontend = .{
.dist = "dist",
.entry = "index.html",
.spa_fallback = true,
.dev = .{
.url = "http://127.0.0.1:5173/",
.command = .{ "npm", "run", "dev", "--", "--host", "127.0.0.1" },
.ready_path = "/",
.timeout_ms = 30000,
},
}框架配置配方 (Recipes)
- Vite:
.url = "http://127.0.0.1:5173/", 启动命令为npm run dev -- --host 127.0.0.1。 - Next.js:
.url = "http://127.0.0.1:3000/", 启动命令为npm run dev -- --hostname 127.0.0.1。 - 静态预览:将
.dist指向构建输出目录,并使用任何本地服务器启动命令。