diff --git a/.workbuddy/memory/2026-09-03.md b/.workbuddy/memory/2026-09-03.md index 59816b4..e91a91d 100644 --- a/.workbuddy/memory/2026-09-03.md +++ b/.workbuddy/memory/2026-09-03.md @@ -161,3 +161,10 @@ - **口径**:与账号周榜 douyin-top-account 保留 5 赛道一致;**账号榜 type=生活vlog / 作品榜条目 category=生活记录**(两套枚举),白名单取并集 RANK_KEEP=['生活记录','生活vlog','小剧场','亲子','美食','旅行'](dsh-data.js) - **实现**:collectCategories 白名单∩实际出现(按 RANK_KEEP 顺序);getRanking hot/likes 条目无条件白名单过滤(「全部」也只留白名单)+ 请求赛道过滤;week 不受影响 - **验证**(服务 5500):week 下拉 5 赛道/250 条不变;hot 下拉[生活记录,小剧场,亲子,美食]全部 29 条;likes 下拉[生活记录,小剧场,亲子,旅行]全部 28 条;当期 0 条赛道(hot 旅行/likes 美食)不进下拉 + +## 热点数据 UI:入口改名 + tab/筛选同行(09-03 15:10) +- 入口卡(首页 data-card)title「账号周榜」→「热点数据」,desc→「账号周榜 · 视频热榜 · 点赞榜」;CRUMB_TITLES ranking 同步改「热点数据」(原与 page-title 不一致) +- data-pages.js renderRanking:tabs 并入 toolbar 一行(返回|标题|三榜tab|右侧赛道下拉+◀日期▶),删独立 tabs() 输出 3 处;错误/空态也带 tab 可切换 +- CSS:.page-toolbar .rank-tabs 行内化(border-bottom none、margin 0、center) +- index.html 静态引用加 ?v=20260903 版本参数(防缓存旧 js/css;今后改动记得 bump) +- 服务无需重启(静态),curl 资源全 200 diff --git a/project/短视频脚本创作/V1.0/mcn-work-shop/public/app.js b/project/短视频脚本创作/V1.0/mcn-work-shop/public/app.js index c3482ee..cead4b5 100644 --- a/project/短视频脚本创作/V1.0/mcn-work-shop/public/app.js +++ b/project/短视频脚本创作/V1.0/mcn-work-shop/public/app.js @@ -299,7 +299,7 @@ const FUNC_GROUPS = [ /* ================= 首页 ================= */ function renderHome() { const cards = [ - { icon: 'trending-up', title: '账号周榜', desc: '三方数据 · 赛道/日期筛选', hash: '#/ranking' }, + { icon: 'trending-up', title: '热点数据', desc: '账号周榜 · 视频热榜 · 点赞榜', hash: '#/ranking' }, { icon: 'users', title: '账号列表', desc: '关注的账号 + 视频列表', hash: '#/accounts' }, { icon: 'pen', title: 'AI写脚本', desc: 'AI脚本+分镜提示词', hash: '#/rewrites' }, { icon: 'flask', title: 'AI脚本诊断', desc: '检查清单+复盘报告', hash: '#/reviews' }, @@ -702,7 +702,7 @@ function openSettings() { renderRootList(); $('#settingsModal').hidden = false; function closeSettings() { $('#settingsModal').hidden = true; } /* ================= 路由 ================= */ -const CRUMB_TITLES = { 'ranking': '账号周榜', 'accounts': '账号列表', 'rewrites': 'AI写脚本', 'reviews': 'AI脚本诊断' }; +const CRUMB_TITLES = { 'ranking': '热点数据', 'accounts': '账号列表', 'rewrites': 'AI写脚本', 'reviews': 'AI脚本诊断' }; function parseHash() { const h = (location.hash || '#/').replace(/^#/, ''); diff --git a/project/短视频脚本创作/V1.0/mcn-work-shop/public/data-pages.js b/project/短视频脚本创作/V1.0/mcn-work-shop/public/data-pages.js index 9ee2563..f2ecdb9 100644 --- a/project/短视频脚本创作/V1.0/mcn-work-shop/public/data-pages.js +++ b/project/短视频脚本创作/V1.0/mcn-work-shop/public/data-pages.js @@ -515,14 +515,14 @@ async function renderRanking(view) { const st = { week: mkState(), hot: mkState(), likes: mkState() }; let tab = 'week'; const tabLabel = () => { const t = RANK_TABS.find(([k]) => k === tab); return t ? t[1] : ''; }; - const tabs = () => ` -
- ${RANK_TABS.map(([k, label]) => ``).join('')} -
`; + // tab 切换 + 赛道选择 + 时间切换 同一行(page-toolbar:返回 | 标题 | tabs | 筛选右;空/错误态不渲染筛选) const toolbar = (s, withFilters) => `
${toolbarBack()} 热点数据 +
+ ${RANK_TABS.map(([k, label]) => ``).join('')} +
${withFilters ? `