MrShi
昨天 cfeeba575b1a9934bec9e57141a21f17ad96a6ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<template>
    <view class="settings-page">
        <view class="avatar-section">
            <image class="avatar-image" src="/static/image/tx@2x.png" mode="aspectFill"></image>
            <view class="change-avatar-btn">更换头像</view>
        </view>
 
        <view class="settings-list">
            <view v-for="item in settingsList" :key="item.label" class="settings-row">
                <text class="row-label">{{ item.label }}</text>
                <view class="row-right">
                    <text class="row-value" :class="{ placeholder: !item.value }">{{ item.value || item.placeholder }}</text>
                    <u-icon name="arrow-right" size="18" color="#B8BDC6"></u-icon>
                </view>
            </view>
        </view>
 
        <view class="logout-wrap">
            <view class="logout-btn">退出登录</view>
        </view>
    </view>
</template>
 
<script>
    export default {
        data() {
            return {
                settingsList: [
                    { label: '昵称', value: '', placeholder: '请输入' },
                    { label: '真实姓名', value: '', placeholder: '请输入' },
                    { label: '绑定手机', value: '181****9990', placeholder: '' },
                    { label: '收货地址', value: '', placeholder: '' },
                    { label: '协议与说明', value: '', placeholder: '' }
                ]
            }
        }
    }
</script>
 
<style lang="scss" scoped>
    .settings-page {
        background: #ffffff;
        padding: 0 30rpx;
        box-sizing: border-box;
    }
 
    .avatar-section {
        margin-top: 40rpx;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
 
    .avatar-image {
        width: 160rpx;
        height: 160rpx;
        border-radius: 50%;
        overflow: hidden;
    }
 
    .change-avatar-btn {
        width: 136rpx;
        height: 48rpx;
        border-radius: 32rpx;
        border: 1rpx solid #10B2FA;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 26rpx;
        color: #10B2FA;
        margin-top: 24rpx;
    }
 
    .settings-list {
        margin-top: 56rpx;
    }
 
    .settings-row {
        height: 98rpx;
        border-bottom: 1rpx solid #E5E5E5;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
 
    .row-label {
        font-weight: 400;
        font-size: 30rpx;
        color: #111111;
    }
 
    .row-right {
        display: flex;
        align-items: center;
        gap: 8rpx;
    }
 
    .row-value {
        font-weight: 400;
        font-size: 28rpx;
        color: #111111;
    }
 
    .row-value.placeholder {
        font-weight: 400;
        font-size: 28rpx;
        color: #999999;
    }
 
    .logout-wrap {
        position: fixed;
        bottom: calc(40rpx + env(safe-area-inset-bottom));
        left: 30rpx;
        width: calc(100% - 60rpx);
        display: flex;
        justify-content: center;
    }
 
    .logout-btn {
        width: 200rpx;
        height: 72rpx;
        border-radius: 36rpx;
        border: 1rpx solid #999999;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 400;
        font-size: 28rpx;
        color: #333333;
        box-sizing: border-box;
    }
</style>