diff --git a/index.html b/index.html index 6b9a49d..7b3f91a 100644 --- a/index.html +++ b/index.html @@ -7,7 +7,7 @@ 兜爸心选 · 孕育陪伴 - + diff --git a/js/app.js b/js/app.js index e26ecdd..d417475 100644 --- a/js/app.js +++ b/js/app.js @@ -3,7 +3,7 @@ (function () { 'use strict'; /* 页面版本号(YYMMDD+序号):显示在「关于兜爸心选」页底部;bump 时同步 head 注释与 ?v= */ - var VER = '26092006'; + var VER = '26092007'; const $ = (s, c) => (c || document).querySelector(s); const $$ = (s, c) => Array.from((c || document).querySelectorAll(s)); @@ -164,7 +164,16 @@ /* ================= 「记一下」弹层 · 全部孕期工具 = 已上架应用列表 ================= 数据:box_app /api/mp/apps(应用管理统一维护图标/名称/链接)。 - 范围:isPublished=1 且有 url;排除授权示例(wx-h5-demo,开发者用的)。 + 范围:isPublished=1 且有 url。**前端不做任何额外过滤** —— + 谁能出现在这里,完全由后台「应用管理」的上架/下架(isPublished)人工决定。 + ⚠️ 2026-09-20 按需求去掉了原来那条 `!/wx-h5-demo/i` 过滤(它单独屏蔽「H5应用授权示例」)。 + 去掉的两个理由,别再加回来: + 1)同一个应用在别的端(商城小程序「我的应用」直接铺全量)是可见的, + 只在 mama-box 屏蔽会造成「同一份数据、两个端不一样」; + 2)mama-box 端要**用这个应用排查「openid 为空」**的场景(授权示例页本身就是干这个的), + 前端把它藏掉就没法从宫格进去。 + 真要让某个应用不出现,去后台下架它,别在前端写名单 —— 名单会漂。 + ⚠️ 那个过滤是按 URL 正则匹配的,本身就是脆的:demo 换个域名就自动失效。 交互:全量铺进弹层宫格(沿用 .apps-grid/.app 样式),点击带身份跳转对应 H5。 */ function appTileColor(name) { const PALETTE = ['#F2917A', '#E8A2B8', '#8FB4E3', '#7FC8A9', '#E3B771', '#A99BD1', '#73BFB2', '#DE8F6E']; @@ -213,8 +222,12 @@ .then(r => (r.ok ? r.json() : null)) .then(d => { const items = (d && d.result && d.result.items) || []; + /* ⚠️ 只要求有 url(没配链接的点了没反应);**不再按应用名/URL 过滤** —— + 「H5应用授权示例(wx-h5-demo)」曾经在这里被单独屏蔽,2026-09-20 按需求去掉: + mama-box 要用它排查 openid 为空的场景,且它的可见性该由后台上下架决定。 + 详见上面那段注释;别在前端重新引入名单。 */ const apps = items - .filter(a => a.url && !/wx-h5-demo/i.test(a.url)) /* 排除授权示例 */ + .filter(a => a.url) .sort((x, y) => (y.seq || 0) - (x.seq || 0) || (y.no || 0) - (x.no || 0)); apps.forEach(a => { APP_BY_ID[a.identifier] = a; }); /* 供首页工具卡按 identifier 取 URL */ renderAppGrid(apps);