配置参考
transone.config.ts、defineConfig、默认值、多页与 CLI 覆盖。
在项目根目录创建可选的 transone.config.ts。配置文件只支持普通对象默认导出;defineConfig() 提供类型检查而不改变对象本身;resolveConfig 合并默认值与 CLI 参数(CLI 参数优先)后得到 ResolvedConfig。
typescript
import { defineConfig } from 'transone-cli';
export default defineConfig({
entry: 'src/main.ts',
pages: {
'/about': 'src/pages/about.ts',
},
server: {
port: 52311,
},
build: {
outDir: 'dist/web',
basePath: '',
directoryPages: true,
},
mp: {
appId: 'touristappid',
navigationBarTitleText: 'TransOne',
},
});配置项
transone.config.ts 字段
| 名称 | 类型 | 说明 |
|---|---|---|
entry | string | 应用入口,默认 src/main.ts;入口必须存在。 |
pages | Record<string, string> | 多页映射:路由 → 页面入口;根路由由 entry 占用。 |
server.host / port / proxy | object | 开发服务器:地址、端口(默认 52211)与代理前缀映射。 |
build.outDir | string | 构建输出目录,默认 dist/build/h5。 |
build.basePath | string | 部署子路径前缀(如 /transone/),默认空。 |
build.directoryPages | boolean | 目录式页面(route/index.html),适合 GitHub Pages 子路径。 |
library | object | 库构建配置:entry / outDir / external / tsconfigs / dts / splitting / sourcemap / minify。 |
mp | MiniProgramConfig | MiniProgramConfigMap | 小程序目标端配置:单一配置(作用于所有 mp 目标),或按平台分组(mp['mp-weixin'] / mp['mp-alipay'] / mp['mp-bytedance']),构建时只取当前 target 对应的一份。 |
解析与覆盖
- 默认值:entry=src/main.ts、target=web、outDir=dist、basePath=空、directoryPages=false。
- 覆盖顺序:CLI 参数(--target / --out-dir / --base / --host / --port 等)覆盖 transone.config.ts,配置覆盖默认值。
- 动态求值:配置在 Node/Bun 环境求值,可读取环境变量或按平台分支(文档站即用 process.env 切换 base)。
子路径部署
GitHub Pages 项目页挂在子路径下(如/transone/)。构建时传入--base,SSR 渲染与客户端路由都会感知子路径;配合directoryPages,每个路由产出独立的index.html,无需服务端重写。本文档站即此模式:
bash
transone build --target web --base /transone/