Merge branch 'milestone-20251031-简版功能开发' of http://39.101.133.168:8807/qimaohong/deepChartVueApp into zhangyong/feature-20251028115958-深度探索
zhangyong/feature-20251028115958-深度探索
-
13api/member.js
-
66components/IndexCard.vue
-
54components/h-loading.vue
-
7package.json
-
3pages/deepExploration/MainForceActions.vue
-
658pages/home/member.vue
-
25pages/marketSituation/countryMarket.vue
-
8pages/marketSituation/globalIndex.vue
-
15pages/marketSituation/marketCondition.vue
-
31pages/marketSituation/marketDetail.vue
-
48pages/marketSituation/marketOverview.vue
-
9pages/marketSituation/marketSituation.vue
-
6pages/setting/about.vue
-
22pages/setting/account.vue
-
4pages/setting/bind.vue
-
26pages/setting/createPwd.vue
-
20pages/setting/email.vue
-
10pages/setting/general.vue
-
32pages/setting/market.vue
-
2pages/setting/password.vue
-
185static/images/welcomeRobot.svg
-
BINstatic/loading-gif.gif
-
BINstatic/marketSituation-image/downTimeChart.png
-
BINstatic/marketSituation-image/upTimeChart.png
-
BINstatic/my/Check-in.png
-
BINstatic/my/MarketSettings.png
-
BINstatic/my/Settings.png
-
BINstatic/my/aboutDC.png
-
BINstatic/my/bell.png
-
BINstatic/my/common.png
-
BINstatic/my/default-avatar.png
-
BINstatic/my/editName.png
-
BINstatic/my/outline.png
-
BINstatic/my/polylines.png
-
BINstatic/my/security.png
-
BINstatic/my/share.png
-
2stores/modules/marketSituation.js
-
24utils/http.js
@ -0,0 +1,54 @@ |
|||||
|
<!-- @format --> |
||||
|
|
||||
|
<template> |
||||
|
<view v-if="loading" class="loading"> |
||||
|
<image class="loadingGif" src="/static/loading-gif.gif" mode=""></image> |
||||
|
</view> |
||||
|
</template> |
||||
|
|
||||
|
<script setup> |
||||
|
import { ref, computed, onMounted,watch } from "vue"; |
||||
|
|
||||
|
// 定义 props |
||||
|
const props = defineProps({ |
||||
|
loading: { |
||||
|
type: Boolean, |
||||
|
default: false, |
||||
|
}, |
||||
|
}); |
||||
|
|
||||
|
const loading = ref(false); |
||||
|
|
||||
|
// 监听 props.loading 变化 |
||||
|
watch(() => props.loading, (newVal) => { |
||||
|
loading.value = newVal; |
||||
|
}); |
||||
|
|
||||
|
// 生命周期 |
||||
|
onMounted(() => { |
||||
|
loading.value = props.loading; |
||||
|
}); |
||||
|
</script> |
||||
|
|
||||
|
<style scoped> |
||||
|
.loading { |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
background-color: rgba(0, 0, 0, 0.5); |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
z-index: 9999; |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.loadingGif { |
||||
|
width: 100rpx; |
||||
|
height: 100rpx; |
||||
|
} |
||||
|
</style> |
||||
@ -1,317 +1,367 @@ |
|||||
<template> |
<template> |
||||
<LoginPrompt ref="loginwPrompt"></LoginPrompt> |
|
||||
<view class="main"> |
|
||||
<view class="top"> |
|
||||
<view class="bell"> |
|
||||
<image class="image-bell" src="/static/my/bell.png"></image> |
|
||||
</view> |
|
||||
<view class="msg"> |
|
||||
<view class="msg-left"> |
|
||||
<view class="avatar"></view> |
|
||||
</view> |
|
||||
<view class="msg-center"> |
|
||||
<view style="display: flex;"> |
|
||||
<view class="userInfo">{{ username }}</view> |
|
||||
<image class="image-editName" src="/static/my/editName.png"></image> |
|
||||
</view> |
|
||||
<view class="userId">ID:{{ dccode }}</view> |
|
||||
</view> |
|
||||
<!-- <view class="msg-right"> |
|
||||
|
<LoginPrompt ref="loginPrompt"></LoginPrompt> |
||||
|
<view class="main"> |
||||
|
<view class="top"> |
||||
|
<view class="bell"> |
||||
|
<!-- <image class="image-bell" src="/static/my/bell.png" /> --> |
||||
|
</view> |
||||
|
<view class="msg"> |
||||
|
<view class="msg-left"> |
||||
|
<image class="avatar" |
||||
|
:src="avatarUrl || 'https://d31zlh4on95l9h.cloudfront.net/default/1961d9d2e31e78e47e885231e7514a35.png'" |
||||
|
mode="aspectFill" /> |
||||
|
</view> |
||||
|
<view class=" msg-center"> |
||||
|
<view style="display: flex;"> |
||||
|
<template v-if="!isEditingName"> |
||||
|
<view class="userInfo">{{ username }}</view> |
||||
|
<image class="image-editName" src="/static/my/editName.png" @click="startEditName" /> |
||||
|
</template> |
||||
|
<template v-else> |
||||
|
<input v-model="editingName" class="edit-input" @blur="finishEditName" |
||||
|
@keyup.enter="finishEditName" autofocus placeholder="请输入用户名" /> |
||||
|
</template> |
||||
|
</view> |
||||
|
<view class="userId">ID:{{ dccode }}</view> |
||||
|
</view> |
||||
|
<!-- <view class="msg-right"> |
||||
<image class="image-attendance" src="/static/my/Check-in.png"/> |
<image class="image-attendance" src="/static/my/Check-in.png"/> |
||||
<span style="font-size:10px;">签到</span> |
<span style="font-size:10px;">签到</span> |
||||
</view> --> |
</view> --> |
||||
</view> |
|
||||
|
|
||||
<view class="settings-buttons"> |
|
||||
<view class="setting-btn" @click="goToMarket"> |
|
||||
<image src="/static/my/MarketSettings.png" class="setting-icon"/> |
|
||||
<text>行情设置</text> |
|
||||
</view> |
|
||||
<view class="setting-btn" @click="goToGeneral"> |
|
||||
<image src="/static/my/Settings.png" class="setting-icon"/> |
|
||||
<text>通用设置</text> |
|
||||
</view> |
|
||||
</view> |
|
||||
|
|
||||
<view class="share" @click="goToShare"> |
|
||||
<image class="img-share" src="/static/my/share.png" mode="widthFix"/> |
|
||||
</view> |
|
||||
</view> |
|
||||
<view class="bottom"> |
|
||||
<view class="list-item" @click="goToAccount"> |
|
||||
<image src="/static/my/security.png" class="list-icon"/> |
|
||||
<text>账号与安全</text> |
|
||||
<uni-icons type="arrowright" size="16" class="arrow"/> |
|
||||
</view> |
|
||||
<view class="list-item"> |
|
||||
<image src="/static/my/connection.png" class="list-icon"/> |
|
||||
<text>联系我们</text> |
|
||||
<uni-icons type="arrowright" size="16" class="arrow"/> |
|
||||
</view> |
|
||||
<view class="list-item" @click="goToNewVersion"> |
|
||||
<image src="/static/my/update.png" class="list-icon"/> |
|
||||
<text>新版本更新</text> |
|
||||
<view class="update-tip">有新版本可更新 |
|
||||
<view class="circle"></view> |
|
||||
</view> |
|
||||
<uni-icons type="arrowright" size="16" class="arrow"/> |
|
||||
</view> |
|
||||
<view class="list-item"> |
|
||||
<image src="/static/my/opinion.png" class="list-icon"/> |
|
||||
<text>意见反馈</text> |
|
||||
<uni-icons type="arrowright" size="16" class="arrow"/> |
|
||||
</view> |
|
||||
<view class="list-item" @click="goToAbout"> |
|
||||
<image src="/static/my/about.png" class="list-icon"/> |
|
||||
<text>关于DeepChart</text> |
|
||||
<uni-icons type="arrowright" size="16" class="arrow"/> |
|
||||
</view> |
|
||||
</view> |
|
||||
<footerBar class="static-footer" :type="type"></footerBar> |
|
||||
</view> |
|
||||
|
</view> |
||||
|
|
||||
|
<view class="settings-buttons"> |
||||
|
<view class="setting-btn" @click="goToMarket"> |
||||
|
<image src="/static/my/MarketSettings.png" class="setting-icon" /> |
||||
|
<text>行情设置</text> |
||||
|
</view> |
||||
|
<view class="setting-btn" @click="goToGeneral"> |
||||
|
<image src="/static/my/Settings.png" class="setting-icon" /> |
||||
|
<text>通用设置</text> |
||||
|
</view> |
||||
|
</view> |
||||
|
|
||||
|
<view class="share" @click="goToShare"> |
||||
|
<image class="img-share" src="/static/my/share.png" mode="widthFix" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="bottom"> |
||||
|
<view class="list-item" @click="goToAccount"> |
||||
|
<image src="/static/my/security.png" class="list-icon" /> |
||||
|
<text>账号与安全</text> |
||||
|
<uni-icons type="arrowright" size="16" class="arrow" /> |
||||
|
</view> |
||||
|
<!-- <view class="list-item"> |
||||
|
<image src="/static/my/connection.png" class="list-icon" /> |
||||
|
<text>联系我们</text> |
||||
|
<uni-icons type="arrowright" size="16" class="arrow" /> |
||||
|
</view> |
||||
|
<view class="list-item" @click="goToNewVersion"> |
||||
|
<image src="/static/my/update.png" class="list-icon" /> |
||||
|
<text>新版本更新</text> |
||||
|
<view class="update-tip">有新版本可更新 |
||||
|
<view class="circle"></view> |
||||
|
</view> |
||||
|
<uni-icons type="arrowright" size="16" class="arrow" /> |
||||
|
</view> |
||||
|
<view class="list-item"> |
||||
|
<image src="/static/my/opinion.png" class="list-icon" /> |
||||
|
<text>意见反馈</text> |
||||
|
<uni-icons type="arrowright" size="16" class="arrow" /> |
||||
|
</view> --> |
||||
|
<view class="list-item" @click="goToAbout"> |
||||
|
<image src="/static/my/about.png" class="list-icon" /> |
||||
|
<text>关于DeepChart</text> |
||||
|
<uni-icons type="arrowright" size="16" class="arrow" /> |
||||
|
</view> |
||||
|
</view> |
||||
|
<footerBar class="static-footer" :type="type"></footerBar> |
||||
|
</view> |
||||
</template> |
</template> |
||||
|
|
||||
<script setup> |
<script setup> |
||||
import { |
|
||||
ref, |
|
||||
onMounted |
|
||||
} from 'vue' |
|
||||
import { |
|
||||
ArrowRight |
|
||||
} from '@element-plus/icons-vue' |
|
||||
import footerBar from '../../components/footerBar.vue' |
|
||||
import {getUserInfo} from "@/api/member" |
|
||||
import { useUserStore } from "../../stores/modules/userInfo" |
|
||||
const userStore = useUserStore() |
|
||||
|
|
||||
const type = ref('member') |
|
||||
const iSMT = ref(0) |
|
||||
const username = ref('') |
|
||||
const dccode = ref('') |
|
||||
|
|
||||
const userInfoRes = ref()// 用户身份信息 |
|
||||
userInfoRes.value = getUserInfo() |
|
||||
userInfoRes.value.then(res => { |
|
||||
username.value = res.data.dcname |
|
||||
dccode.value = res.data.dccode |
|
||||
console.log('用户信息', userInfoRes.value) |
|
||||
}) |
|
||||
|
|
||||
|
|
||||
const goToGeneral = () => { |
|
||||
uni.navigateTo({ |
|
||||
url: '/pages/setting/general' |
|
||||
}) |
|
||||
} |
|
||||
|
|
||||
const goToMarket = () => { |
|
||||
uni.navigateTo({ |
|
||||
url: '../setting/market' |
|
||||
}) |
|
||||
} |
|
||||
|
|
||||
const goToAccount = () => { |
|
||||
uni.navigateTo({ |
|
||||
url: '../setting/account' |
|
||||
}) |
|
||||
} |
|
||||
|
|
||||
const goToNewVersion = () => { |
|
||||
uni.navigateTo({ |
|
||||
url: '../setting/newVersion' |
|
||||
}) |
|
||||
} |
|
||||
|
|
||||
const goToAbout = () => { |
|
||||
uni.navigateTo({ |
|
||||
url: '../setting/about' |
|
||||
}) |
|
||||
} |
|
||||
|
|
||||
const goToShare = () => { |
|
||||
console.log('用户信息==========',userStore.userInfo.isVisitor) |
|
||||
if (userStore.userInfo.isVisitor) { |
|
||||
uni.showToast({ |
|
||||
title: '请先登录', |
|
||||
icon: 'none' |
|
||||
|
import { |
||||
|
ref, |
||||
|
onMounted |
||||
|
} from 'vue' |
||||
|
import { |
||||
|
ArrowRight |
||||
|
} from '@element-plus/icons-vue' |
||||
|
import footerBar from '../../components/footerBar.vue' |
||||
|
import { |
||||
|
getUserInfo, |
||||
|
updateUserInfo |
||||
|
} from "@/api/member" |
||||
|
import { |
||||
|
useUserStore |
||||
|
} from "../../stores/modules/userInfo" |
||||
|
const userStore = useUserStore() |
||||
|
|
||||
|
const type = ref('member') |
||||
|
const iSMT = ref(0) |
||||
|
const username = ref('') |
||||
|
const dccode = ref('') |
||||
|
const avatarUrl = ref('') |
||||
|
const isEditingName = ref(false) |
||||
|
const editingName = ref('') |
||||
|
|
||||
|
const userInfoRes = ref() // 用户身份信息 |
||||
|
userInfoRes.value = getUserInfo() |
||||
|
userInfoRes.value.then(res => { |
||||
|
username.value = res.data.dcname |
||||
|
dccode.value = res.data.dccode |
||||
|
avatarUrl.value = res.data.avatar |
||||
|
console.log('用户信息', userInfoRes.value) |
||||
|
}) |
||||
|
|
||||
|
const startEditName = () => { |
||||
|
isEditingName.value = true |
||||
|
editingName.value = username.value |
||||
|
} |
||||
|
|
||||
|
const finishEditName = async () => { |
||||
|
if (editingName.value.trim() === '' || editingName.value === username.value) { |
||||
|
isEditingName.value = false |
||||
|
return |
||||
|
} |
||||
|
try { |
||||
|
await updateUserInfo({ |
||||
|
dcname: editingName.value |
||||
|
}) |
||||
|
uni.showToast({ |
||||
|
title: '昵称修改成功', |
||||
|
icon: 'none' |
||||
|
}) |
||||
|
} catch (err) { |
||||
|
uni.showToast({ |
||||
|
title: '修改失败,请重试', |
||||
|
icon: 'none' |
||||
|
}) |
||||
|
} finally { |
||||
|
isEditingName.value = false |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
const goToGeneral = () => { |
||||
|
uni.navigateTo({ |
||||
|
url: '/pages/setting/general' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
const goToMarket = () => { |
||||
|
uni.navigateTo({ |
||||
|
url: '../setting/market' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
const goToAccount = () => { |
||||
|
uni.navigateTo({ |
||||
|
url: '../setting/account' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
const goToNewVersion = () => { |
||||
|
uni.navigateTo({ |
||||
|
url: '../setting/newVersion' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
const goToAbout = () => { |
||||
|
uni.navigateTo({ |
||||
|
url: '../setting/about' |
||||
|
}) |
||||
|
} |
||||
|
|
||||
|
const goToShare = () => { |
||||
|
console.log('用户信息==========',userStore.userInfo.isVisitor) |
||||
|
if (userStore.userInfo.isVisitor) { |
||||
|
uni.showToast({ |
||||
|
title: '请先登录', |
||||
|
icon: 'none' |
||||
|
}) |
||||
|
return |
||||
|
} |
||||
|
uni.navigateTo({ |
||||
|
url: '../setting/share' |
||||
}) |
}) |
||||
return |
|
||||
} |
} |
||||
uni.navigateTo({ |
|
||||
url: '../setting/share' |
|
||||
}) |
|
||||
} |
|
||||
|
|
||||
onMounted(() => { |
|
||||
// 状态栏高度 |
|
||||
iSMT.value = uni.getSystemInfoSync().statusBarHeight |
|
||||
console.log('??????????????', iSMT.value) |
|
||||
console.log('通信来的用户身份',userStore.userInfo) |
|
||||
}) |
|
||||
|
|
||||
|
onMounted(() => { |
||||
|
// 状态栏高度 |
||||
|
iSMT.value = uni.getSystemInfoSync().statusBarHeight |
||||
|
console.log('??????????????', iSMT.value) |
||||
|
console.log('通信来的用户身份', userStore.userInfo) |
||||
|
}) |
||||
</script> |
</script> |
||||
|
|
||||
<style scoped> |
<style scoped> |
||||
.static-footer { |
|
||||
position: fixed; |
|
||||
bottom: 0; |
|
||||
} |
|
||||
|
|
||||
.top { |
|
||||
height: 50vh; |
|
||||
background-color: white; |
|
||||
} |
|
||||
|
|
||||
.bell { |
|
||||
height: 9.6vh; |
|
||||
display: flex; |
|
||||
align-items: flex-end; |
|
||||
justify-content: flex-end; |
|
||||
padding-right: 50rpx; |
|
||||
} |
|
||||
|
|
||||
.image-bell { |
|
||||
width: 26rpx; |
|
||||
height: 32rpx; |
|
||||
} |
|
||||
|
|
||||
.msg { |
|
||||
height: 10.7vh; |
|
||||
display: flex; |
|
||||
margin-top: 3vh; |
|
||||
margin-bottom: 3vh; |
|
||||
} |
|
||||
|
|
||||
.msg-left { |
|
||||
width: 252rpx; |
|
||||
display: flex; |
|
||||
justify-content: center; |
|
||||
align-items: center; |
|
||||
} |
|
||||
|
|
||||
.avatar { |
|
||||
width: 175rpx; |
|
||||
height: 175rpx; |
|
||||
border-radius: 50%; |
|
||||
background-color: black; |
|
||||
} |
|
||||
|
|
||||
.msg-center { |
|
||||
width: 388rpx; |
|
||||
padding-left: 2.5vh; |
|
||||
display: flex; |
|
||||
flex-direction: column; |
|
||||
justify-content: center; |
|
||||
} |
|
||||
|
|
||||
.userInfo { |
|
||||
font-size: 20px; |
|
||||
} |
|
||||
|
|
||||
.userId { |
|
||||
font-size: 14px; |
|
||||
margin-top: 1vh; |
|
||||
} |
|
||||
|
|
||||
.image-editName { |
|
||||
width: 40rpx; |
|
||||
height: 40rpx; |
|
||||
margin-left: 15rpx; |
|
||||
} |
|
||||
|
|
||||
.msg-right { |
|
||||
display: flex; |
|
||||
flex-direction: column; |
|
||||
justify-content: center; |
|
||||
} |
|
||||
|
|
||||
.image-attendance { |
|
||||
width: 43rpx; |
|
||||
height: 43rpx; |
|
||||
} |
|
||||
|
|
||||
.settings-buttons { |
|
||||
display: flex; |
|
||||
justify-content: space-around; |
|
||||
} |
|
||||
|
|
||||
.setting-btn { |
|
||||
width: 349rpx; |
|
||||
height: 135rpx; |
|
||||
display: flex; |
|
||||
align-items: center; |
|
||||
justify-content: center; |
|
||||
background-color: rgb(243, 243, 243); |
|
||||
border-radius: 8%; |
|
||||
margin-bottom: 1vh; |
|
||||
} |
|
||||
|
|
||||
.setting-icon { |
|
||||
width: 64.7rpx; |
|
||||
height: 64.7rpx; |
|
||||
margin-right: 25rpx; |
|
||||
} |
|
||||
|
|
||||
.setting-btn text { |
|
||||
font-size: 28rpx; |
|
||||
font-weight: bold; |
|
||||
color: #333; |
|
||||
} |
|
||||
|
|
||||
.share { |
|
||||
height: 12.6vh; |
|
||||
display: flex; |
|
||||
justify-content: center; |
|
||||
align-items: center; |
|
||||
} |
|
||||
|
|
||||
.img-share { |
|
||||
width: 720rpx; |
|
||||
height: 160rpx; |
|
||||
} |
|
||||
|
|
||||
.bottom { |
|
||||
height: 44.5vh; |
|
||||
margin-top: 1vh; |
|
||||
background-color: rgb(255, 255, 255); |
|
||||
} |
|
||||
|
|
||||
.list-item { |
|
||||
width: 670rpx; |
|
||||
height: 7vh; |
|
||||
display: flex; |
|
||||
align-items: center; |
|
||||
margin: 0rpx 40rpx; |
|
||||
border-bottom: 1rpx solid #eee; |
|
||||
} |
|
||||
|
|
||||
.list-item:last-child { |
|
||||
border-bottom: none; |
|
||||
} |
|
||||
|
|
||||
.list-icon { |
|
||||
width: 42rpx; |
|
||||
height: 42rpx; |
|
||||
margin-right: 18rpx; |
|
||||
} |
|
||||
|
|
||||
.arrow { |
|
||||
margin-left: auto; |
|
||||
} |
|
||||
|
|
||||
.update-tip { |
|
||||
display: flex; |
|
||||
color: #999; |
|
||||
font-size: 24rpx; |
|
||||
align-items: center; |
|
||||
margin-left: 200rpx; |
|
||||
justify-content: center; |
|
||||
} |
|
||||
|
|
||||
.circle { |
|
||||
width: 10rpx; |
|
||||
height: 10rpx; |
|
||||
border-radius: 50%; |
|
||||
background-color: red; |
|
||||
margin-left: 10rpx; |
|
||||
} |
|
||||
|
.static-footer { |
||||
|
position: fixed; |
||||
|
bottom: 0; |
||||
|
} |
||||
|
|
||||
|
.top { |
||||
|
height: 50vh; |
||||
|
background-color: white; |
||||
|
} |
||||
|
|
||||
|
.bell { |
||||
|
height: 9.6vh; |
||||
|
display: flex; |
||||
|
align-items: flex-end; |
||||
|
justify-content: flex-end; |
||||
|
padding-right: 50rpx; |
||||
|
} |
||||
|
|
||||
|
.image-bell { |
||||
|
width: 26rpx; |
||||
|
height: 32rpx; |
||||
|
} |
||||
|
|
||||
|
.msg { |
||||
|
height: 10.7vh; |
||||
|
display: flex; |
||||
|
margin-top: 3vh; |
||||
|
margin-bottom: 3vh; |
||||
|
} |
||||
|
|
||||
|
.msg-left { |
||||
|
width: 252rpx; |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.avatar { |
||||
|
width: 175rpx; |
||||
|
height: 175rpx; |
||||
|
border-radius: 50%; |
||||
|
background-color: black; |
||||
|
} |
||||
|
|
||||
|
.msg-center { |
||||
|
width: 388rpx; |
||||
|
padding-left: 2.5vh; |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
justify-content: center; |
||||
|
} |
||||
|
|
||||
|
.userInfo { |
||||
|
font-size: 30rpx; |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
|
||||
|
.userId { |
||||
|
font-size: 14px; |
||||
|
margin-top: 1vh; |
||||
|
} |
||||
|
|
||||
|
.image-editName { |
||||
|
width: 40rpx; |
||||
|
height: 40rpx; |
||||
|
margin-left: 15rpx; |
||||
|
} |
||||
|
|
||||
|
.msg-right { |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
justify-content: center; |
||||
|
} |
||||
|
|
||||
|
.image-attendance { |
||||
|
width: 43rpx; |
||||
|
height: 43rpx; |
||||
|
} |
||||
|
|
||||
|
.settings-buttons { |
||||
|
display: flex; |
||||
|
justify-content: space-around; |
||||
|
} |
||||
|
|
||||
|
.setting-btn { |
||||
|
width: 349rpx; |
||||
|
height: 135rpx; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
justify-content: center; |
||||
|
background-color: rgb(243, 243, 243); |
||||
|
border-radius: 8%; |
||||
|
margin-bottom: 1vh; |
||||
|
} |
||||
|
|
||||
|
.setting-icon { |
||||
|
width: 64.7rpx; |
||||
|
height: 64.7rpx; |
||||
|
margin-right: 25rpx; |
||||
|
} |
||||
|
|
||||
|
.setting-btn text { |
||||
|
font-size: 28rpx; |
||||
|
font-weight: bold; |
||||
|
color: #333; |
||||
|
} |
||||
|
|
||||
|
.share { |
||||
|
height: 12.6vh; |
||||
|
display: flex; |
||||
|
justify-content: center; |
||||
|
align-items: center; |
||||
|
} |
||||
|
|
||||
|
.img-share { |
||||
|
width: 720rpx; |
||||
|
height: 160rpx; |
||||
|
} |
||||
|
|
||||
|
.bottom { |
||||
|
height: 44.5vh; |
||||
|
margin-top: 1vh; |
||||
|
background-color: rgb(255, 255, 255); |
||||
|
} |
||||
|
|
||||
|
.list-item { |
||||
|
width: 670rpx; |
||||
|
height: 7vh; |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
margin: 0rpx 40rpx; |
||||
|
border-bottom: 1rpx solid #eee; |
||||
|
} |
||||
|
|
||||
|
.list-item:last-child { |
||||
|
border-bottom: none; |
||||
|
} |
||||
|
|
||||
|
.list-icon { |
||||
|
width: 42rpx; |
||||
|
height: 42rpx; |
||||
|
margin-right: 18rpx; |
||||
|
} |
||||
|
|
||||
|
.arrow { |
||||
|
margin-left: auto; |
||||
|
} |
||||
|
|
||||
|
.update-tip { |
||||
|
display: flex; |
||||
|
color: #999; |
||||
|
font-size: 24rpx; |
||||
|
align-items: center; |
||||
|
margin-left: 200rpx; |
||||
|
justify-content: center; |
||||
|
} |
||||
|
|
||||
|
.circle { |
||||
|
width: 10rpx; |
||||
|
height: 10rpx; |
||||
|
border-radius: 50%; |
||||
|
background-color: red; |
||||
|
margin-left: 10rpx; |
||||
|
} |
||||
|
|
||||
|
.edit-input { |
||||
|
background-color: #999; |
||||
|
} |
||||
</style> |
</style> |
||||
185
static/images/welcomeRobot.svg
File diff suppressed because it is too large
View File
|
After Width: 120 | Height: 120 | Size: 134 KiB |
|
After Width: 160 | Height: 62 | Size: 8.4 KiB |
|
After Width: 160 | Height: 62 | Size: 9.1 KiB |
|
Before Width: 22 | Height: 22 | Size: 614 B After Width: 44 | Height: 44 | Size: 1.5 KiB |
|
Before Width: 33 | Height: 33 | Size: 687 B After Width: 66 | Height: 66 | Size: 1.3 KiB |
|
Before Width: 27 | Height: 27 | Size: 1.2 KiB After Width: 54 | Height: 54 | Size: 3.3 KiB |
|
Before Width: 167 | Height: 155 | Size: 8.7 KiB After Width: 334 | Height: 310 | Size: 21 KiB |
|
Before Width: 13 | Height: 16 | Size: 358 B After Width: 26 | Height: 32 | Size: 902 B |
|
Before Width: 31 | Height: 23 | Size: 237 B After Width: 62 | Height: 46 | Size: 355 B |
|
After Width: 216 | Height: 216 | Size: 58 KiB |
|
Before Width: 15 | Height: 15 | Size: 424 B After Width: 30 | Height: 30 | Size: 1.1 KiB |
|
Before Width: 31 | Height: 25 | Size: 1.3 KiB After Width: 62 | Height: 49 | Size: 4.3 KiB |
|
Before Width: 31 | Height: 23 | Size: 1.3 KiB After Width: 62 | Height: 46 | Size: 3.6 KiB |
|
Before Width: 23 | Height: 23 | Size: 669 B After Width: 46 | Height: 46 | Size: 1.6 KiB |
|
Before Width: 360 | Height: 80 | Size: 28 KiB After Width: 720 | Height: 160 | Size: 93 KiB |