Files
wm 956ad3c3bc fix(my-plans): 修复计划列表页因 plan-card 漏声明 fc-icon 导致编译失败进不去
- 根因:c4639d0 给 plan-card 换上 <fc-icon> 但 plan-card.json 的 usingComponents 留空,
  微信要求组件自行声明所引用的自定义组件,导致任何使用 plan-card 的页面编译报错、无法进入。
- 修复:plan-card/index.json 补上 fc-icon 声明(与 exercise-card/avatar/bottom-nav 一致)。
- 整体优化 my-plans:
  * 新增 status 四态(loading/list/empty/error),请求失败显示具体错误 + 『重新加载』按钮,杜绝静默进不去
  * 加载态用 refresh-cw 旋转图标替代纯文字
  * 遗留金色主按钮(新建计划/空态按钮/官方计划链接)统一到 Kinetic Dark 的 Volt 绿强调色,去除旧主题不一致
2026-07-23 00:20:01 +08:00

34 lines
1.6 KiB
Plaintext

.page { min-height: 100vh; background: var(--bg-grad); }
.newbar { padding: 16rpx 32rpx; }
.newbar__btn {
display: flex; align-items: center; justify-content: center;
background: var(--accent);
color: var(--accent-on); font-weight: 700; font-size: 32rpx;
border-radius: 999rpx; padding: 26rpx;
transition: background 0.15s var(--ease, ease);
}
.newbar__btn:active { background: var(--accent-hover); }
.grid { display: flex; flex-wrap: wrap; gap: 18rpx; }
.grid__item { width: calc((100% - 18rpx) / 2); }
.empty { color: var(--text-3); font-size: 26rpx; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 120rpx 0; }
.empty__t { margin-top: 24rpx; }
.empty-box { display: flex; flex-direction: column; align-items: center; padding: 120rpx 40rpx; }
.empty-box__emoji {
width: 160rpx; height: 160rpx; border-radius: 36rpx;
background: var(--surface-2); display: flex; align-items: center; justify-content: center;
font-size: 88rpx;
}
.empty-box__t { font-size: 30rpx; color: var(--text-2); margin-top: 36rpx; text-align: center; }
.empty-box__btn {
margin-top: 44rpx; padding: 24rpx 88rpx; border-radius: 999rpx;
background: var(--accent);
color: var(--accent-on); font-weight: 700; font-size: 30rpx;
transition: background 0.15s var(--ease, ease);
}
.empty-box__btn:active { background: var(--accent-hover); }
.empty-box__link { margin-top: 28rpx; font-size: 26rpx; color: var(--accent); }
.spin { animation: mp-spin 0.9s linear infinite; }
@keyframes mp-spin { from { transform: rotate(0); } to { transform: rotate(360deg); } }