五个页面按 h5/css 的 style.css → ui-20261009 → ui-20261012 覆盖顺序逐条重排, 换算规则固定为 calc(N * var(--u)) → 2N rpx,固定 px 的字号保持 px。 - app.acss:换回 H5 设计 token(方角小倒角按钮 10rpx、卡片 14rpx、.chev 折线箭头) - splash/profile/history:底图与按钮文字图改用 H5 资源,隐私/政策弹窗按 H5 重排 - report:环形分用 conic-gradient、人脸裁切窗口叠加 face_maps、标记点百分比盒、 侧脸皱纹 pending/unavailable 文案;用 Playwright 抓 H5 94 个选择器几何比对, 整页高 2438.7 vs 2438.67 - camera:淘宝 <camera> 组件在真机整页崩溃(嵌了微信专有的 <cover-view>), 改为默认系统相机 + `config.nativeCamera` 开关 + pages/camtest 冒烟页验证组件 - permissions:淘宝用带前缀的 scope.camera(裸名返回 5022 Scope:camera信息不存在), 先试带前缀再退回裸名,拒绝后不再重复弹窗 - voice:非 HTTPS 资源导致的异常不再冒泡成整页崩溃;app.js 加开发版错误 toast - 开发版入口:权限诊断(启动页/相机页)、相机组件测试 - 测试 20/20(新增权限与相机能力用例)
49 lines
2.1 KiB
XML
49 lines
2.1 KiB
XML
<!-- ═════ 历史报告 —— 对照 H5 index.html #s-history(L32-42) 与 app.js renderHistoryList()(L1956-1985) ═════ -->
|
|
<view class="history">
|
|
<!-- H5 #s-history{background:#efefef url(bg-history-h5) center/cover fixed} -->
|
|
<image class="history-bg" src="{{bgUrl}}" mode="aspectFill" />
|
|
|
|
<!-- H5 .history-content -->
|
|
<view class="history-content">
|
|
<view class="report-title">您的报告</view>
|
|
|
|
<!-- H5 .account-status.account-status-history -->
|
|
<view class="account-status account-status-history {{signedIn ? 'account-status-on' : ''}}">
|
|
<view class="account-label">
|
|
<view class="account-dot"></view>
|
|
<text class="account-text">{{accountLabel}}</text>
|
|
</view>
|
|
<view class="account-logout" a:if="{{signedIn}}" onTap="onLogout">退出登录</view>
|
|
</view>
|
|
|
|
<!-- H5 .card.history-count -->
|
|
<view class="card history-count">
|
|
<view class="history-count-label">测试数量</view>
|
|
<view class="history-count-value">{{countText}}</view>
|
|
</view>
|
|
|
|
<!-- H5 .identity-note -->
|
|
<view class="identity-note">{{identityNote}}</view>
|
|
|
|
<!-- H5 #history-list -->
|
|
<view class="history-list">
|
|
<view class="history-list-note" a:if="{{loading && !items.length}}">正在读取报告…</view>
|
|
<view class="history-list-note" a:if="{{!loading && error}}">{{error}},请刷新列表重试。</view>
|
|
<view class="history-empty" a:if="{{!loading && !error && !items.length}}">
|
|
<view>暂无检测报告</view>
|
|
<view>完成一次检测后,报告会自动保存在这里。</view>
|
|
</view>
|
|
<view class="card history-item" a:for="{{items}}" a:key="id" data-id="{{item.id}}" onTap="onOpen">
|
|
<view class="history-item-line"><text class="history-item-label">测试时间</text> {{item.date}}</view>
|
|
<button class="history-detail" data-id="{{item.id}}" catchTap="onOpen">查看详情</button>
|
|
</view>
|
|
</view>
|
|
|
|
<!-- H5 .history-retry -->
|
|
<button class="history-retry" onTap="load">刷新列表</button>
|
|
</view>
|
|
|
|
<!-- H5 .toast -->
|
|
<view class="toast {{toastOn ? 'show' : ''}}">{{toastText}}</view>
|
|
</view>
|