Procházet zdrojové kódy

feat(frontend): T41 成长页新增小游戏入口卡 + 修复孩子首页小游戏死链

- cfc-frontend/pages/growth-main/index.vue: 登录态饮食推荐卡之后新增同款
  action-card「益智小游戏」(复用 .action-card 系列样式,不新增样式),
  图标 🎮(warm)、标题/描述/右箭头,@click=goToGames;新增 goToGames 方法
  跳转 /pages/games/list 大厅。
- cfc-frontend/pages/home-pages/child-index.vue: goToGames 跳转目标由不存在的
  /pages/games/games 修正为 /pages/games/list(死链修复,仅一行)。

设计规格: docs/superpowers/specs/2026-11-05-miniapp-games-entry.md (cfclub abc0b932d)
验证: verify-vue-compile.js 两文件 PASS;audit-mp-antipatterns.js ERROR 0;
      cfc-backend mvn compile 通过;cfc-web npm run build 通过(构建产物已还原)。
E2E Test Bot před 1 týdnem
rodič
revize
9195a4b378

+ 15 - 0
cfc-frontend/pages/growth-main/index.vue

@@ -210,6 +210,20 @@
         </view>
       </view>
 
+      <!-- 益智小游戏 -->
+      <view class="section">
+        <view class="action-card" @click="goToGames">
+          <view class="action-icon-wrap warm">
+            <text class="action-icon">🎮</text>
+          </view>
+          <view class="action-info">
+            <text class="action-title">益智小游戏</text>
+            <text class="action-desc">舒尔特方格 · 猜数字 · 数独</text>
+          </view>
+          <text class="action-arrow">›</text>
+        </view>
+      </view>
+
       <DimensionActivities :isLoggedIn="true" @activityClick="goActivityDetail" @moreActivities="goMoreActivities" style="margin-bottom:60rpx" />
 
       <!-- 推荐阅读 -->
@@ -319,6 +333,7 @@ export default {
       var mid = uni.getStorageSync('currentChildId') || uni.getStorageSync('currentMemberId') || ''
       uni.navigateTo({ url: '/pages/diet/recommendation' + (mid ? '?memberId=' + mid : '') })
     },
+    goToGames: function() { uni.navigateTo({ url: '/pages/games/list' }) },
     goToArticle: function(article) { var id = article && article.id ? article.id : article; if (!id) return; uni.navigateTo({ url: '/pages/article-center/article-detail?id=' + id }) },
     goToProduct: function(prod) { var id = prod && prod.id ? prod.id : prod; if (!id) return; uni.navigateTo({ url: '/pages/discover-detail/product-detail/product-detail?id=' + id }) },
     goMoreProducts: function() { uni.navigateTo({ url: '/pages/shop/index/index' }) },

+ 1 - 1
cfc-frontend/pages/home-pages/child-index.vue

@@ -736,7 +736,7 @@ export default {
     },
     goToGames() {
       this.$emit('navigate', { page: 'games' })
-      uni.navigateTo({ url: '/pages/games/games' })
+      uni.navigateTo({ url: '/pages/games/list' })
     },
     goToSelfQuiz() {
       this.$emit('navigate', { page: 'self-quiz' })