77 lines
3.8 KiB
Plaintext
77 lines
3.8 KiB
Plaintext
<view class="container">
|
||
<!-- 表单收在一张通栏白块里,与「我的」页的菜单白块同源:
|
||
白面 + 上下各 2rpx 发丝线 + 中性阴影,圆角 0、左右顶到屏幕两侧。
|
||
原先这里是 mine 页上的 comp_profile 浮层(fixed + 半透明遮罩 + 底部
|
||
sheet),不占页面栈,系统返回键会直接退出小程序;改为真页面后
|
||
由微信原生导航栏接管返回,不再有这个问题。
|
||
行内沿用列表页/弹窗表单的语言:标签左走 --muted,值右走 --ink 加粗,
|
||
行间隔用 2rpx --line 发丝线 -->
|
||
<view class="form-card">
|
||
<!-- 头像:右侧 chevron 是"可换图"的点击暗示。
|
||
无真头像时渲染与「我的」页同一个默认底座(浅橙底 + 暖陶土 user 线标),
|
||
不再用 home-ink 位图——位图着色读不到令牌,换主色要整图重上色。
|
||
注:新选的图是微信本地临时路径,utils/api.js 无文件上传接口,
|
||
目前不会落库,只在本次编辑中生效 -->
|
||
<view class="form-row" bindtap="onChooseAvatar" hover-class="form-row-hover">
|
||
<text class="form-label">头像</text>
|
||
<view class="avatar-wrap">
|
||
<view class="avatar avatar-default" wx:if="{{!editData.avatar}}">
|
||
<t-icon name="user" size="48rpx" color="#9B4508" />
|
||
</view>
|
||
<image class="avatar" wx:else src="{{editData.avatar}}" mode="aspectFill"></image>
|
||
<t-icon name="chevron-right" class="form-arrow" size="32rpx" />
|
||
</view>
|
||
</view>
|
||
|
||
<view class="form-row">
|
||
<text class="form-label">姓名</text>
|
||
<input class="form-input" value="{{editData.name}}" placeholder="请输入姓名" placeholder-class="form-placeholder"
|
||
maxlength="20" bindinput="onFieldInput" data-field="name" />
|
||
</view>
|
||
|
||
<view class="form-row">
|
||
<text class="form-label">性别</text>
|
||
<!-- 选中态用软橙底 + 实心橙描边(项目既有档),未选中是纸面底 + 发丝边,
|
||
不引入第二个色相 -->
|
||
<view class="sex-wrap">
|
||
<view class="sex-tag {{editData.sex === 'male' ? 'sex-tag-active' : ''}}" bindtap="onSelectSex" data-sex="male">
|
||
<text class="sex-text">男</text>
|
||
</view>
|
||
<view class="sex-tag {{editData.sex === 'female' ? 'sex-tag-active' : ''}}" bindtap="onSelectSex" data-sex="female">
|
||
<text class="sex-text">女</text>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
|
||
<view class="form-row">
|
||
<text class="form-label">出生日期</text>
|
||
<picker class="form-picker" mode="date" value="{{editData.birth}}" start="1930-01-01" end="{{today}}"
|
||
bindchange="onBirthChange">
|
||
<view class="picker-value {{editData.birth ? '' : 'picker-placeholder'}}">
|
||
{{editData.birth || '请选择出生日期'}}
|
||
</view>
|
||
</picker>
|
||
</view>
|
||
|
||
<view class="form-row">
|
||
<text class="form-label">所在地区</text>
|
||
<picker class="form-picker" mode="region" value="{{[editData.province, editData.city, editData.district]}}"
|
||
bindchange="onRegionChange">
|
||
<view class="picker-value {{editData.province ? '' : 'picker-placeholder'}}">
|
||
{{editData.province || '请选择地区'}}{{editData.city ? ',' + editData.city : ''}}{{editData.district ? ',' + editData.district : ''}}
|
||
</view>
|
||
</picker>
|
||
</view>
|
||
|
||
<!-- 手机号来自微信授权,本页只读展示 -->
|
||
<view class="form-row form-row-last">
|
||
<text class="form-label">手机号</text>
|
||
<text class="form-value">{{editData.phone || '未绑定'}}</text>
|
||
</view>
|
||
</view>
|
||
|
||
<!-- 保存是本页唯一的实心暖橙块,独占「全页同类实心块不超过一处」的额度 -->
|
||
<view class="footer-bar">
|
||
<button class="primary-btn {{saving ? 'primary-btn-disabled' : ''}}" bindtap="onSave">保存</button>
|
||
</view>
|
||
</view> |