86 lines
3.7 KiB
Plaintext
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: #fa5151; 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>
|