10. 配置
文件 Assets/sus.config.json:
json
{
"SharqDirectory": "Assets/MyUI",
"GeneratedDirectory": "Assets/MyUI/Generated",
"ResourcesDirectory": "Assets/MyUI/Generated/Resources/SusRuntime",
"EnableValidation": true,
"StrictVForKey": true,
"LogGeneratedFiles": true,
"HotReloadStatePreserve": true,
"logLevel": "Warn"
}请保持
ResourcesDirectory位于GeneratedDirectory内部(Resources 镜像会写入生成输出的内部)。 根路径不一致(例如.../gen与.../Generated/Resources)会把输出拆成两棵目录树。
| 字段 | 默认值 | 含义 |
|---|---|---|
SharqDirectory | Assets/SusUI | .sharq 源文件所在位置 |
GeneratedDirectory | Assets/SusUI/Generated | .g.cs / .g.uss 的输出目录 |
ResourcesDirectory | …/Generated/Resources/SusRuntime | 由编译器同步的 runtime Resources 目录(位于 GeneratedDirectory 内) |
EnableValidation | true | 运行 SharqValidator |
StrictVForKey | true | 当 v-for 缺少 :key 时给出警告 |
LogGeneratedFiles | true | 将生成过程记录到控制台 |
HotReloadStatePreserve | true | 在 Play 模式下的 domain reload 期间保留 Prop<T> 的快照 |
logLevel | Warn | SusLog 的运行时最低级别(Error / Warn / Info / Verbose,不区分大小写)。审计与其他诊断在升到 Verbose 之前保持静默。见 11-api-reference。 |
logLevel 在首次使用 SusLog 时从 Assets/sus.config.json 读取(对 player 安全;不是仅 Editor 的配置 UI)。代码可用 SusApp.UseLogLevel(...) / SusLog.Level 覆盖。脚本定义 SUS_VERBOSE_LOGS 会把下限抬到 Verbose,且不能被配置或 UseLogLevel 降低。
不存在 EnableHashCaching 字段 —— 增量编译使用的是编译器自身的缓存。