feat(navBar): 新增自定义导航栏组件,接入详细报告与我的页面
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.7
parent
48ac39f0e0
commit
f13edf31b7
@@ -0,0 +1,105 @@
|
||||
// pages/detailedReport/detailedReport.ts
|
||||
Page({
|
||||
data: {
|
||||
// 导航栏背景色,根据滚动位置动态变化
|
||||
navBgColor: 'rgba(255,255,255,0)',
|
||||
|
||||
header: {
|
||||
date: '2026-07-23 16:32',
|
||||
weight: '68.80',
|
||||
unit: 'kg',
|
||||
bmi: 'BMI正常',
|
||||
change: '较上次-0.3kg'
|
||||
},
|
||||
basic: [
|
||||
{ label: '身高', value: '172', unit: 'cm', tag: '' },
|
||||
{ label: 'BMI', value: '22.4', unit: '', tag: '标准' },
|
||||
{ label: '身体得分', value: '73', unit: '分', tag: '一般' },
|
||||
{ label: '体脂率', value: '22.1', unit: '%', tag: '' }
|
||||
],
|
||||
sections: [
|
||||
{
|
||||
title: '身体成分',
|
||||
items: [
|
||||
{ label: '水分率', value: '50%', status: '不足', statusClass: 'low' },
|
||||
{ label: '水分量', value: '30.6kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '蛋白质率', value: '10%', status: '超量', statusClass: 'high' },
|
||||
{ label: '蛋白质量', value: '8.2kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '脂肪量', value: '14.3kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '肌肉量', value: '38.8kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '肌肉率', value: '69.2%', status: '标准', statusClass: 'normal' },
|
||||
{ label: '骨骼肌量', value: '22.5kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '骨骼肌率', value: '40%', status: '标准', statusClass: 'normal' },
|
||||
{ label: '骨量', value: '2.3kg', status: '标准', statusClass: 'normal' }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '脂肪分析',
|
||||
items: [
|
||||
{ label: '内脏脂肪', value: '6', status: '不足', statusClass: 'low' },
|
||||
{ label: '皮下脂肪率', value: '22.5%', status: '标准', statusClass: 'normal' },
|
||||
{ label: '皮下脂肪量', value: '12.6kg', status: '标准', statusClass: 'normal' }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '体态管理',
|
||||
items: [
|
||||
{ label: '理想体重', value: '62.1kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '去脂体重', value: '41.7kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '身体年龄', value: '20岁', status: '标准', statusClass: 'normal' },
|
||||
{ label: '身体类型', value: '缺乏运动型', status: '标准', statusClass: 'normal' },
|
||||
{ label: '推测腰臀比', value: '0.8%', status: '标准', statusClass: 'normal' }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '体重管控',
|
||||
items: [
|
||||
{ label: '控制体重', value: '3.9kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '脂肪控制量', value: '-0.5kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '肌肉控制量', value: '4.4kg', status: '标准', statusClass: 'normal' }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '细胞液分析',
|
||||
items: [
|
||||
{ label: '细胞内水量', value: '11.4kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '细胞外水量', value: '19.1kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '无机盐量', value: '2.9kg', status: '不足', statusClass: 'low' },
|
||||
{ label: '身体细胞量', value: '27.4kg', status: '标准', statusClass: 'normal' },
|
||||
{ label: '骨骼肌质量指数', value: '7.2kg/m²', status: '标准', statusClass: 'normal' }
|
||||
]
|
||||
}
|
||||
],
|
||||
limbSections: [
|
||||
{
|
||||
title: '躯干/四肢脂肪',
|
||||
items: [
|
||||
{ label: '左臂', value: '2.3kg丨80.9%' },
|
||||
{ label: '右臂', value: '2.3kg丨80.9%' },
|
||||
{ label: '左腿', value: '6.3kg丨100%' },
|
||||
{ label: '右腿', value: '6.3kg丨100%' },
|
||||
{ label: '躯干', value: '18.4kg丨97.8%' }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '躯干/四肢肌肉',
|
||||
items: [
|
||||
{ label: '左臂', value: '2.3kg丨80.9%' },
|
||||
{ label: '右臂', value: '2.3kg丨80.9%' },
|
||||
{ label: '左腿', value: '6.3kg丨100%' },
|
||||
{ label: '右腿', value: '6.3kg丨100%' },
|
||||
{ label: '躯干', value: '18.4kg丨97.8%' }
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
// 滚动时导航栏背景渐显
|
||||
onScroll(e: WechatMiniprogram.ScrollViewScroll) {
|
||||
const scrollTop = e.detail.scrollTop;
|
||||
const opacity = Math.min(Math.max(scrollTop / 300, 0), 1);
|
||||
this.setData({
|
||||
navBgColor: `rgba(255,255,255,${opacity})`,
|
||||
});
|
||||
},
|
||||
})
|
||||
Reference in New Issue
Block a user