Files
sundynix-pets/pets-fe/pages/community/community.wxss
T
Blizzard 09322ecbec chore(fe): 静态自查按作用域算 class,当场抓出第三例跨页裸奔
## 原来的检查是错的
它把所有 wxss 并成一个全局集合再看「这个 class 有没有人定义过」。
可这个项目连着栽的两次都是「有人定义过,但定义在别的页面里」:

  .post-card    留在 community.wxss,用户主页用它 → 帖子完全没样式
  .profile-row  留在 settings.wxss,「我的」用它  → 四个入口整个散架

两次它都报「✓ 全部对得上」。全局并一起看,恰好检查不出这一类问题。

## 改成按作用域
app.wxss 全局;页面 wxss 只对自己那页生效;组件 wxss 只对组件自己的节点
生效,且要开了 addGlobalClass 才看得到全局。@import 跟着递归收
(pt-icon 的图标就是这么来的)。

class 不在作用域内时分两种报法——「没有任何定义」是拼错了,
「只定义在 xxx.wxss」是跨页借用,后者直接把定义位置指出来。

## 跑起来当场又抓到一个
pages/relations 的关注按钮 .follow-btn / .follow-btn.on 只定义在
community.wxss —— 关注/粉丝列表里那个按钮一直是裸的。已提到 app.wxss。

## 自测过
往 learn.wxml 塞一个只在 decorate.wxss 里定义的 class,确认报错并指对了
位置,再还原确认恢复绿。不然这检查本身就是个装饰。

脚本从临时目录挪进 pets-fe/scripts/check.js(原来只活在会话的临时目录里,
会话一结束就没了),路径改成相对自己。scripts/ 加进 packOptions.ignore,
不进小程序包体。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-30 08:30:59 +08:00

20 lines
768 B
Plaintext

.compose-card{margin-bottom:var(--sp-4)}
/* 关注按钮 */
.retry-btn{
margin-top:var(--sp-3);display:inline-block;padding:var(--sp-2) var(--sp-6);border-radius:var(--r-full);
background:var(--primary-soft);color:var(--primary-dark);font-weight:var(--fw-b);font-size:var(--fs-sm);
}
/* 分类标签吸顶,发布按钮收进同一条:原来那个大黑按钮独占 124rpx,
而它是低频操作,不该在每屏都占着首屏 */
.feed-bar{display:flex;align-items:flex-start;gap:var(--sp-3)}
.feed-bar .st{flex:1;min-width:0}
.feed-post{
flex:none;display:flex;align-items:center;gap:4rpx;
height:var(--h-sm);padding:0 var(--sp-3);border-radius:var(--r-full);
background:var(--cta);color:#fff;font-size:var(--fs-sm);font-weight:var(--fw-b);
}