Files
youlegames/codes/minipro/calculation/miniprogram/pages/profile/profile.wxml
2026-02-08 15:43:32 +08:00

86 lines
3.7 KiB
Plaintext

<!--pages/profile/profile.wxml-->
<scroll-view class="scrollarea" scroll-y type="list">
<view class="container">
<!-- 用户信息卡片 -->
<view class="user-card">
<view class="settings-btn" bindtap="onSettingsTap" wx:if="{{playerid}}">
<text class="settings-icon">⚙</text>
</view>
<block wx:if="{{!hasUserInfo}}">
<!-- 头像展示 -->
<view class="avatar-wrapper">
<!-- mp 模式:可点击选择头像 -->
<button wx:if="{{authMode === 'mp'}}" class="avatar-btn" open-type="chooseAvatar" bindchooseavatar="onChooseAvatar">
<image class="avatar" src="{{userInfo.avatarUrl}}"></image>
</button>
<!-- oa 模式:只读 -->
<image wx:else class="avatar" src="{{userInfo.avatarUrl}}"></image>
</view>
<!-- 昵称展示 -->
<view class="nickname-wrapper">
<!-- mp 模式:输入框 -->
<input wx:if="{{authMode === 'mp'}}" type="nickname" class="nickname-input" placeholder="请输入昵称" value="{{userInfo.nickName}}" bindchange="onNicknameChange"/>
<!-- oa 模式:文本 -->
<text wx:else class="nickname-text">{{userInfo.nickName || '授权获取微信信息'}}</text>
</view>
<!-- 玩家详细信息展示 -->
<view wx:if="{{playerid}}" class="info-grid">
<view class="info-item">
<text class="label">ID</text>
<text class="value">{{playerid}}</text>
</view>
<view class="info-item">
<text class="label">性别</text>
<view class="gender-box {{userInfo.gender == 2 ? 'female' : 'male'}}">
<text class="gender-icon">{{userInfo.gender == 2 ? '♀' : '♂'}}</text>
<text>{{userInfo.gender == 2 ? '女' : '男'}}</text>
</view>
</view>
<view class="info-item">
<text class="label">手机</text>
<text class="value" wx:if="{{phoneNumber}}">{{phoneNumber}}</text>
<text class="value" wx:else style="color: #DC8B70; font-weight: bold;">未绑定</text>
</view>
</view>
</block>
</view>
<!-- 操作区域 -->
<view class="action-area">
<!-- 提示文字 -->
<view class="login-hint">{{loginHint}}</view>
<block wx:if="{{!hasUserInfo}}">
<!-- 未登录/未授权状态:显示登录按钮 -->
<block wx:if="{{!playerid}}">
<button class="login-btn" bindtap="goOfficialAccountAuth">微信一键登录</button>
</block>
<!-- 已授权状态:显示后续操作 -->
<block wx:else>
<!-- 手机号按钮 -->
<button wx:if="{{!phoneNumber}}" class="login-btn" open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">绑定手机号</button>
<block wx:else>
<!-- 验证码区域 -->
<view class="verification-area">
<button class="login-btn" bindtap="getVerificationCode">生成随机数</button>
<view wx:if="{{verificationCode}}" class="code-display">
<text class="code-text">{{verificationCode}}</text>
<view class="copy-btn" bindtap="copyVerificationCode">复制</view>
</view>
</view>
<button wx:if="{{isTestEnabled}}" class="secondary-btn" bindtap="testLoginWithPhone" style="margin-top: 20rpx;">测试登录(带验证码)</button>
</block>
</block>
</block>
</view>
</view>
</scroll-view>