导入与导出
模板规则写在
.json或.js文件里,通过设置页「配置管理」导入。导入是覆盖式更新、整份校验:要么全成,要么全不动。
文件格式
json
{
"id": "wide",
"name": "wide",
"floatAlignment": "alternate",
"rules": [
{ "ratioRange": "[0.75,1.35]", "width": 0.68, "layout": "auto", "side": "auto" },
{ "ratioRange": "(1.35,5]", "width": "0.55 + 0.1 * Math.log(r)", "layout": "auto", "side": "auto" }
]
}把这段存成 .json,在 设置 → AutoGallery → 配置管理 → 导入配置 选中即可。文件里也可以放一个数组,一次导入多个模板。
| 字段 | 可省略 | 省略时的行为 |
|---|---|---|
id | 是 | 取文件名 |
name | 是 | 取 id |
floatAlignment | 是 | alternate |
rules | 是 | 空数组按 auto 处理 |
覆盖式更新
| 情况 | 结果 |
|---|---|
与已有模板同 id | 整份替换 |
| 文件里没提到的模板 | 保持不变 |
id 是内置的 auto | 永远跳过,不会被覆盖 |
| 规则里有非法表达式 | 该条被静默丢弃 |
最后一条值得单独说:非法规则不报错,只是消失。所以导入完成后,在同一个面板里看一遍规则条数是否与文件一致;少了就是有表达式没过校验。
整份校验
任意一条模板非法时,整个文件被拒绝导入,设置不会部分写入。这样避免出现「前两条生效、后两条没生效」的中间状态。
外部配置文件
设置项 externalProfilePath 可以指向库外的一个配置文件,适用于「模板随团队仓库走,而不是随个人库走」的场景:
- 路径可以写绝对路径,也可以写相对库根目录的路径。
- 文件不存在或读取失败时,回落到上次成功导入的配置,不会把模板清空。
- 导出时可以写入这个路径,或直接下载到系统下载目录。
导出
「导出全部」把当前所有模板写成一个文件,格式与导入完全一致;因此可以把导出的文件当模板直接改,再导回来。
校验与排查
| 现象 | 原因 | 处理 |
|---|---|---|
| 导入提示「没有可导入的布局模板」 | 文件里只有 auto,或字段名写错 | 检查 rules 是否为数组 |
| 导入成功但规则少了 | 表达式用了裸 min / max | 改为 Math.min / Math.max |
| 导入后没有任何变化 | 模板没有被路由使用 | 见路由 |
| 某张图仍不受模板影响 | 它写了 ag:width | 删掉参数,或接受参数优先 |
下一步
- 布局模板:规则怎么写
- Frontmatter 路由:怎么让模板生效