fix(cms): 图库分组自由输入 + 前端筛选动态化;速通坞折叠防误触
用户实测三处:①照片分组写死 street/landscape 两选不能加——Sveltia select 无 creatable(文档核实),改 string 自由输入;前端筛选同步动态化(分组 从数据反向派生,[a-z0-9-] 命名的分组零配置自动出现筛选片),顺带排查全 后台其余 select:分轨/颜色/字体/来源均为语义契约(写死是安全设计)唯分 组该开放;②速通坞与编辑区抢点击(手机端尤甚)——改默认收起成一枚 26px 圆钮,点开才展开五入口,状态记忆+点外部收起;③翻译无按钮答疑: 英文版走构建链自动机翻(保存中文即出,无按钮是设计),仪表盘有覆盖数。 (同轮收编站长经 CMS 新增的图库照片 夜色金茂湾) 验证: pnpm astro build exit 0;config-check 通过;E2E 65/65(筛选断言适配动态 id);产物断言 f-g-landscape 数据派生 Spec: 2026-11-05_blog-5n-admin-deep-optimization Co-authored-by: GLM-5.3
This commit is contained in:
1 parent
5d187e1240
commit
ef2bd97267
4 files changed
+63
-25
No files matched your search
+3
-5
@@ -295,14 +295,12 @@ await page.keyboard.press('Escape');
|
||||
ok('灯箱·Esc 关闭', await page.locator('#lb[open]').count() === 0);
|
||||
|
||||
// 7) 分组筛选(当前库存单组:21 张全 landscape;验证筛选逻辑用街拍=0 反证)
|
||||
await page.click('label[for=f-landscape]');
|
||||
await page.click('label[for=f-g-landscape]'); // 5n:分组筛选动态化(数据派生 id)
|
||||
await page.waitForTimeout(200);
|
||||
const landscapeShown = await page.locator('.shot:visible').count();
|
||||
ok('图库·风景筛选', landscapeShown === 21, `${landscapeShown} 张`);
|
||||
await page.click('label[for=f-street]');
|
||||
await page.waitForTimeout(200);
|
||||
const streetShown = await page.locator('.shot:visible').count();
|
||||
ok('图库·街拍筛选(应为0)', streetShown === 0, `${streetShown} 张`);
|
||||
// 5n:分组筛选动态化——筛选片由数据派生(当前库存仅 landscape 一组,不再有 street 档)
|
||||
ok('图库·筛选片数据派生', (await page.locator('.filters .chip').count()) === 2);
|
||||
await page.click('label[for=f-all]');
|
||||
|
||||
// 8) 书评字体(思源宋)与技术页 TOC
|
||||
|
||||
Reference in new issue
Block a user