记忆索引:收紧专题显示区那条(自己成了最长行)

This commit is contained in:
tamakyi
2026-10-12 16:47:21 +08:00
parent b40160867e
commit 2d46b8a0ca
+1 -1
View File
@@ -30,7 +30,7 @@
- 瓦片须与底图同 `crs`;带地图页须 `p.HasMap=true`。
- `tileDigits` 补前导 0;`tileName` 尾缀 `len(s)-2` 单数字编号时为 -1 ⇒ panic;解码守卫 `len(name)<8`。
- `fogIndexV` 必须 `atomic.Pointer`(普通指针=真 data race)。`fog_race_test.go`(-race)
- **专题显示区=一组圆(并集)**:存 `topics.areas` jsonb(不单开表,省掉归属口径/白名单/迁移顺序三件事),SQL 是 N 个圆的 **OR**(每圆 3 个占位符,编号须恰好覆盖 `[prefix+1, len(args)]`)。前台裁剪=**单独 pane**(不能裁 `tilePane`,底图在里面)+ `clip-path: path()`,每圆一段**同绕向**子路径(绕向反了重叠处会被挖成洞);圆心须 `project()`;⚠️ 注册必须排在 `applyFit()` **之后** —— 视图未定时 `latLngToContainerPoint()` 会抛「Set map center and zoom first.」,把后续图层添加一起打断(实测=迷雾整片消失、不报错)。`TestTopicFogIsClippedToAreas`(四十五、四十六)
- **专题显示区=一组圆(并集)**:存 `topics.areas` jsonb(不单开表);SQL 是 N 个圆的 **OR**(每圆 3 个占位符,编号须恰好覆盖 `[prefix+1,len(args)]`)。裁剪=**单独 pane**(不能裁 `tilePane`)+ `clip-path: path()`,每圆一段**同绕向**子路径(反了重叠处会挖成洞);圆心须 `project()`;⚠️ 注册必须排在 `applyFit()` **之后**(视图未定会抛「Set map center and zoom first.」并打断后续图层=迷雾整片消失且不报错)。`TestTopicFogIsClippedToAreas`(四十五、四十六)
## 前端 / 模板 / CSS(details 六~八、十七、廿三、廿八D、卅七)
- ⚠️ **对访客公开的块,措辞必须按身份分支**(`{{if .IsAdmin}}我的…{{else}}站长…{{end}}`):