feat: 个人信息完善页面

This commit is contained in:
yangzhe 2025-07-10 14:46:13 +08:00
parent 531fcef52c
commit 25ab27317d
3 changed files with 70 additions and 6 deletions

View File

@ -21,7 +21,7 @@
<image <image
class="avatar-image" class="avatar-image"
:src=" :src="
userInfo.avatar || '/static/common/images/avatar_default.png' userInfo.avatar || '/static/common/images/avatar_default.jpg'
" "
mode="aspectFill" mode="aspectFill"
@click="chooseAvatar" @click="chooseAvatar"
@ -35,17 +35,22 @@
<view class="info-item"> <view class="info-item">
<text class="item-label">姓名</text> <text class="item-label">姓名</text>
<view class="item-content"> <view class="item-content">
<text>{{ userInfo.name }}</text> <input
class="item-input"
v-model="userInfo.name"
placeholder="请输入姓名"
placeholder-style="color: #CCCCCC;"
/>
</view> </view>
</view> </view>
<view class="info-item"> <view class="info-item">
<text class="item-label">性别</text> <text class="item-label">性别</text>
<view class="item-content" @click="openPicker('gender')"> <view class="item-content" @click="openPicker('gender')">
<text class="placeholder-text" v-if="!userInfo.gender" <text class="placeholder-text" v-if="!userInfo.genderText"
>请选择性别</text >请选择性别</text
> >
<text v-else>{{ userInfo.gender }}</text> <text v-else>{{ userInfo.genderText }}</text>
<text class="arrow-icon">></text> <text class="arrow-icon">></text>
</view> </view>
</view> </view>
@ -106,9 +111,26 @@
</u-button> </u-button>
</div> </div>
<!-- 性别选择器 -->
<u-select
v-model="showGenderSelect"
mode="single-column"
:list="genderList"
@confirm="confirmGender"
></u-select>
<!-- 归属地选择器 -->
<u-picker
v-model="showRegionSelect"
mode="single-column"
:list="regionList"
@confirm="confirmRegion"
></u-picker>
<!-- 选择器弹窗 --> <!-- 选择器弹窗 -->
<u-picker <u-picker
v-model="showPicker" v-model="showPicker"
mode="selector"
:columns="pickerColumns" :columns="pickerColumns"
@confirm="onPickerConfirm" @confirm="onPickerConfirm"
@cancel="showPicker = false" @cancel="showPicker = false"
@ -122,8 +144,8 @@ export default {
data() { data() {
return { return {
userInfo: { userInfo: {
avatar: "/static/common/images/avatar_default.png", avatar: "",
name: "杨翼", name: "",
gender: "", gender: "",
region: "", region: "",
examYear: "", examYear: "",
@ -145,6 +167,33 @@ export default {
"机械工程", "机械工程",
], ],
}, },
//
showGenderSelect: false,
genderList: [
{
label: "男",
value: "0",
},
{
label: "女",
value: "1",
},
],
//
showRegionSelect: false,
regionList: [
{
label: "北京",
value: "0",
},
{
label: "上海",
value: "1",
},
],
}; };
}, },
mounted() {}, mounted() {},
@ -175,6 +224,11 @@ export default {
}); });
}, },
openPicker(type) { openPicker(type) {
if (type === "gender") {
this.showGenderSelect = true;
return;
}
this.currentPicker = type; this.currentPicker = type;
this.pickerColumns = [this.pickerData[type]]; this.pickerColumns = [this.pickerData[type]];
this.showPicker = true; this.showPicker = true;
@ -197,6 +251,14 @@ export default {
} }
this.showPicker = false; this.showPicker = false;
}, },
//
confirmGender(e) {
console.log("确认性别", e[0].value);
this.userInfo.gender = e[0].value;
this.userInfo.genderText = e[0].label;
this.showGenderSelect = false;
},
}, },
}; };
</script> </script>

View File

@ -333,6 +333,8 @@ export default {
login() { login() {
const res = { const res = {
data: { data: {
// token:
// "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOiJBZG1pbiIsIlVzZXJJbmZvIjoie1wiSWRcIjpcImI1MjY5ZWQxLTViYzgtMTFmMC05YTg5LTAwMTYzZTJkMmRkM1wiLFwiTmFtZVwiOlwi6J-56ICB5biIXCIsXCJQaG9uZU51bWJlclwiOlwiMTM1ODg4ODg4ODhcIixcIlNleFwiOjEsXCJBY2NvdW50VHlwZVwiOjJ9IiwibmJmIjoxNzUyMTE4ODU0LCJleHAiOjE3NTIyMDUyNTR9.aF0Q-X3ebIld7RIKMMW68tXjmmR4OO08dXLAtHWuuwc",
token: token:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOiJVc2VyIiwiVXNlckluZm8iOiJ7XCJJZFwiOlwiNTljNzIxNmMtMTRhZS00NmRmLTkxYTItNGYzMjFlZjM2YjQ5XCIsXCJOYW1lXCI6XCIxNzMzNTM3NDg4N1wiLFwiUGhvbmVOdW1iZXJcIjpcIjE3MzM1Mzc0ODg3XCIsXCJTZXhcIjoyLFwiQWNjb3VudFR5cGVcIjowfSIsIm5iZiI6MTc1MjExMDcwOSwiZXhwIjoxNzUyMTk3MTA5fQ.VDv2KjGq3s3BbZxZjB3P-BaeDU_1vIdqFEWGGvdpIxU", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dzLzIwMDgvMDYvaWRlbnRpdHkvY2xhaW1zL3JvbGUiOiJVc2VyIiwiVXNlckluZm8iOiJ7XCJJZFwiOlwiNTljNzIxNmMtMTRhZS00NmRmLTkxYTItNGYzMjFlZjM2YjQ5XCIsXCJOYW1lXCI6XCIxNzMzNTM3NDg4N1wiLFwiUGhvbmVOdW1iZXJcIjpcIjE3MzM1Mzc0ODg3XCIsXCJTZXhcIjoyLFwiQWNjb3VudFR5cGVcIjowfSIsIm5iZiI6MTc1MjExMDcwOSwiZXhwIjoxNzUyMTk3MTA5fQ.VDv2KjGq3s3BbZxZjB3P-BaeDU_1vIdqFEWGGvdpIxU",
}, },

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB