@ -1,16 +0,0 @@ |
|||||
{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ |
|
||||
// launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 |
|
||||
"version": "0.0", |
|
||||
"configurations": [{ |
|
||||
"default" : |
|
||||
{ |
|
||||
"launchtype" : "local" |
|
||||
}, |
|
||||
"h5" : |
|
||||
{ |
|
||||
"launchtype" : "local" |
|
||||
}, |
|
||||
"type" : "uniCloud" |
|
||||
} |
|
||||
] |
|
||||
} |
|
||||
@ -0,0 +1,15 @@ |
|||||
|
{ |
||||
|
// 使用 IntelliSense 了解相关属性。 |
||||
|
// 悬停以查看现有属性的描述。 |
||||
|
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 |
||||
|
"version": "0.2.0", |
||||
|
"configurations": [ |
||||
|
{ |
||||
|
"type": "chrome", |
||||
|
"request": "launch", |
||||
|
"name": "针对 localhost 启动 Chrome", |
||||
|
"url": "http://localhost:8081", |
||||
|
"webRoot": "${workspaceFolder}" |
||||
|
} |
||||
|
] |
||||
|
} |
||||
|
Before Width: | Height: | Size: 812 KiB After Width: | Height: | Size: 207 KiB |
|
Before Width: | Height: | Size: 185 KiB After Width: | Height: | Size: 51 KiB |
|
Before Width: | Height: | Size: 176 KiB After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 5.1 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 27 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 75 KiB |
|
After Width: | Height: | Size: 64 KiB |
|
After Width: | Height: | Size: 3.5 MiB |
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 8.1 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 217 KiB |
|
Before Width: | Height: | Size: 9.7 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 120 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 871 B |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 1007 B |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 62 KiB |
|
Before Width: | Height: | Size: 25 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 722 B |
|
After Width: | Height: | Size: 822 B |
|
After Width: | Height: | Size: 525 B |
|
After Width: | Height: | Size: 456 B |
|
After Width: | Height: | Size: 724 B |
|
After Width: | Height: | Size: 804 B |
|
Before Width: | Height: | Size: 7.2 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 9.7 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 9.4 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 8.5 KiB |
|
Before Width: | Height: | Size: 369 KiB After Width: | Height: | Size: 89 KiB |
|
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 18 KiB |
@ -1,203 +1,206 @@ |
|||||
<template> |
<template> |
||||
<v-page> |
<v-page> |
||||
<!-- 头部 --> |
<!-- 头部 --> |
||||
<v-header :title="$t('accountSettings.a0')"></v-header> |
<v-header :title="$t('accountSettings.a0')"></v-header> |
||||
|
|
||||
<!-- 中间 --> |
<!-- 中间 --> |
||||
<view class=" m-y-sm rounded-md m-x-lg overflow-hidden box-shadow"> |
<view class=" m-y-sm rounded-md m-x-lg overflow-hidden box-shadow"> |
||||
<view |
<view |
||||
class="p-y-xs per-bot p-x-md h-36 border-b border-gray-7 d-flex align-center justify-between bg-panel-3 " |
class="p-y-xs per-bot p-x-md h-36 border-b border-gray-7 d-flex align-center justify-between bg-panel-3 " |
||||
> |
> |
||||
<span class="color-light">{{$t('accountSettings.a1')}}</span> |
<span class="color-light">{{$t('accountSettings.a1')}}</span> |
||||
<view class="d-flex align-center"> |
<view class="d-flex align-center"> |
||||
<van-icon name="user-circle-o" class="color-theme-1 fn-30" /> |
<van-icon name="user-circle-o" class="color-theme-1 fn-30"/> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view |
||||
|
class="per-bot p-x-md p-y-md border-b border-gray-7 d-flex align-center justify-between bg-panel-3" |
||||
|
> |
||||
|
<span class="color-light">{{$t('accountSettings.a2')}}</span> |
||||
|
<view class="d-flex align-center"> |
||||
|
<span>{{user.username}}</span> |
||||
|
</view> |
||||
|
</view> |
||||
|
<view class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3"> |
||||
|
<span class="color-light">{{$t('accountSettings.a3')}}</span> |
||||
|
<view class="d-flex align-center"> |
||||
|
<span>{{user.account}}</span> |
||||
|
</view> |
||||
|
</view> |
||||
|
<!-- #ifdef APP-PLUS --> |
||||
|
<view class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3"> |
||||
|
<span class="color-light">{{$t('common.c2')}}</span> |
||||
|
<view class="d-flex align-center"> |
||||
|
<span>{{versions}}</span> |
||||
|
</view> |
||||
|
</view> |
||||
|
<!-- #endif --> |
||||
</view> |
</view> |
||||
</view> |
<view class="m-x-lg rounded-md overflow-hidden box-shadow"> |
||||
<view |
<!-- <v-link |
||||
class="per-bot p-x-md p-y-md border-b border-gray-7 d-flex align-center justify-between bg-panel-3" |
to="/pages/safe/phone" |
||||
> |
tag="div" |
||||
<span class="color-light">{{$t('accountSettings.a2')}}</span> |
class="per-bot p-x-md border-b border-gray-7 p-y-md d-flex align-center justify-between bg-panel-3 " |
||||
<view class="d-flex align-center"> |
> |
||||
<span>{{user.username}}</span> |
<span class="color-light">{{$t('accountSettings.a4')}}</span> |
||||
</view> |
<view class="d-flex align-center"> |
||||
</view> |
<span class="color-right">{{user.phone}}</span> |
||||
<view class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3"> |
<span class="color-theme-1 m-l-xs" v-if="user.phone">{{$t('accountSettings.a5')}}</span> |
||||
<span class="color-light">{{$t('accountSettings.a3')}}</span> |
<span class="color-theme-1 m-l-xs" v-else>{{$t('accountSettings.a6')}}</span> |
||||
<view class="d-flex align-center"> |
<van-icon |
||||
<span>{{user.account}}</span> |
class="p-l-xs" |
||||
</view> |
name="arrow" |
||||
</view> |
size="16" |
||||
<!-- #ifdef APP-PLUS --> |
color="#646566" |
||||
<view class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3"> |
@click.stop |
||||
<span class="color-light">{{$t('common.c2')}}</span> |
/> |
||||
<view class="d-flex align-center"> |
</view> |
||||
<span>{{versions}}</span> |
</v-link> --> |
||||
|
|
||||
|
<v-link |
||||
|
tag="div" |
||||
|
to="/pages/safe/email" |
||||
|
class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3" |
||||
|
> |
||||
|
<span class="color-light">{{$t('accountSettings.a7')}}</span> |
||||
|
<view class="d-flex align-center"> |
||||
|
<span>{{user.email}}</span> |
||||
|
<span class="color-theme-1 m-l-xs" v-if="user.email">{{$t('accountSettings.a5')}}</span> |
||||
|
<span class="color-theme-1 m-l-xs" v-else>{{$t('accountSettings.a6')}}</span> |
||||
|
<van-icon |
||||
|
class="p-l-xs" |
||||
|
name="arrow" |
||||
|
size="16" |
||||
|
color="#646566" |
||||
|
@click.stop |
||||
|
/> |
||||
|
</view> |
||||
|
</v-link> |
||||
</view> |
</view> |
||||
</view> |
<view class="m-y-sm m-x-lg overflow-hidden rounded-md box-shadow"> |
||||
<!-- #endif --> |
<view class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3"> |
||||
</view> |
<view class="color-light">{{$t('accountSettings.b2')}}</view> |
||||
<view class="m-x-lg rounded-md overflow-hidden box-shadow"> |
<view class="d-flex align-center"> |
||||
<!-- <v-link |
<v-lang/> |
||||
to="/pages/safe/phone" |
<van-icon |
||||
tag="div" |
class="p-l-xs" |
||||
class="per-bot p-x-md border-b border-gray-7 p-y-md d-flex align-center justify-between bg-panel-3 " |
name="arrow" |
||||
> |
size="16" |
||||
<span class="color-light">{{$t('accountSettings.a4')}}</span> |
color="#646566" |
||||
<view class="d-flex align-center"> |
@click.stop |
||||
<span class="color-right">{{user.phone}}</span> |
/> |
||||
<span class="color-theme-1 m-l-xs" v-if="user.phone">{{$t('accountSettings.a5')}}</span> |
</view> |
||||
<span class="color-theme-1 m-l-xs" v-else>{{$t('accountSettings.a6')}}</span> |
</view> |
||||
<van-icon |
|
||||
class="p-l-xs" |
|
||||
name="arrow" |
|
||||
size="16" |
|
||||
color="#646566" |
|
||||
@click.stop |
|
||||
/> |
|
||||
</view> |
</view> |
||||
</v-link> --> |
|
||||
|
|
||||
<v-link |
<view class="m-x-lg rounded-md overflow-hidden box-shadow"> |
||||
tag="div" |
<view |
||||
to="/pages/safe/email" |
@click="outLogin" |
||||
class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3" |
class="per-bot p-x-md border-b border-gray-7 p-y-md d-flex align-center justify-between bg-panel-3 " |
||||
> |
> |
||||
<span class="color-light">{{$t('accountSettings.a7')}}</span> |
<span class="color-light">{{$t('accountSettings.a8')}}</span> |
||||
<view class="d-flex align-center"> |
<view class="d-flex align-center"> |
||||
<span>{{user.email}}</span> |
<van-icon |
||||
<span class="color-theme-1 m-l-xs" v-if="user.email">{{$t('accountSettings.a5')}}</span> |
class="p-l-xs" |
||||
<span class="color-theme-1 m-l-xs" v-else>{{$t('accountSettings.a6')}}</span> |
name="arrow" |
||||
<van-icon |
size="16" |
||||
class="p-l-xs" |
color="#646566" |
||||
name="arrow" |
@click.stop |
||||
size="16" |
/> |
||||
color="#646566" |
</view> |
||||
@click.stop |
</view> |
||||
/> |
|
||||
</view> |
<view |
||||
</v-link> |
@click="loginOut" |
||||
</view> |
class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3" |
||||
<view class="m-y-sm m-x-lg overflow-hidden rounded-md box-shadow"> |
> |
||||
<view class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3"> |
<span class="color-light">{{$t('accountSettings.a9')}}</span> |
||||
<view class="color-light">{{$t('accountSettings.b2')}}</view> |
<view class="d-flex align-center"> |
||||
<view class="d-flex align-center"> |
<van-icon |
||||
<v-lang/> |
class="p-l-xs" |
||||
<van-icon |
name="arrow" |
||||
class="p-l-xs" |
size="16" |
||||
name="arrow" |
color="#646566" |
||||
size="16" |
@click.stop |
||||
color="#646566" |
/> |
||||
@click.stop |
</view> |
||||
/> |
</view> |
||||
</view> |
</view> |
||||
</view> |
|
||||
</view> |
<!-- <view class="m-t-lg p-x-md fn-center"> |
||||
|
<van-button |
||||
<view class="m-x-lg rounded-md overflow-hidden box-shadow"> |
icon="exchange" |
||||
<view |
class="w-max fn-lg m-b-md" |
||||
@click="outLogin" |
color="#f05319" |
||||
class="per-bot p-x-md border-b border-gray-7 p-y-md d-flex align-center justify-between bg-panel-3 " |
type="info" |
||||
> |
block |
||||
<span class="color-light">{{$t('accountSettings.a8')}}</span> |
@click="outLogin" |
||||
<view class="d-flex align-center"> |
>{{$t('accountSettings.a8')}}</van-button> |
||||
<van-icon |
<view class="m-t-md"> |
||||
class="p-l-xs" |
<v-button block class="w-max color-light" plain @click="loginOut">{{$t('accountSettings.a9')}}</v-button> |
||||
name="arrow" |
</view> |
||||
size="16" |
</view> --> |
||||
color="#646566" |
</v-page> |
||||
@click.stop |
|
||||
/> |
|
||||
</view> |
|
||||
</view> |
|
||||
|
|
||||
<view |
|
||||
@click="loginOut" |
|
||||
class="per-bot p-x-md p-y-md d-flex align-center justify-between bg-panel-3" |
|
||||
> |
|
||||
<span class="color-light">{{$t('accountSettings.a9')}}</span> |
|
||||
<view class="d-flex align-center"> |
|
||||
<van-icon |
|
||||
class="p-l-xs" |
|
||||
name="arrow" |
|
||||
size="16" |
|
||||
color="#646566" |
|
||||
@click.stop |
|
||||
/> |
|
||||
</view> |
|
||||
</view> |
|
||||
</view> |
|
||||
|
|
||||
<!-- <view class="m-t-lg p-x-md fn-center"> |
|
||||
<van-button |
|
||||
icon="exchange" |
|
||||
class="w-max fn-lg m-b-md" |
|
||||
color="#f05319" |
|
||||
type="info" |
|
||||
block |
|
||||
@click="outLogin" |
|
||||
>{{$t('accountSettings.a8')}}</van-button> |
|
||||
<view class="m-t-md"> |
|
||||
<v-button block class="w-max color-light" plain @click="loginOut">{{$t('accountSettings.a9')}}</v-button> |
|
||||
</view> |
|
||||
</view> --> |
|
||||
</v-page> |
|
||||
</template> |
</template> |
||||
|
|
||||
<script> |
<script> |
||||
import app from "app.js" |
import app from "app.js" |
||||
import { mapState,mapGetters } from "vuex"; |
import {mapState, mapGetters} from "vuex"; |
||||
import Member from "@/api/member"; |
import Member from "@/api/member"; |
||||
|
|
||||
export default { |
export default { |
||||
data() { |
data() { |
||||
return { |
return { |
||||
versions:app.version |
versions: app.version |
||||
}; |
}; |
||||
}, |
|
||||
computed: { |
|
||||
...mapState({ |
|
||||
user: "user", |
|
||||
version: "version", |
|
||||
}), |
|
||||
...mapGetters(['themeStyle']) |
|
||||
}, |
|
||||
mounted() { |
|
||||
}, |
|
||||
methods: { |
|
||||
changeNickname() { |
|
||||
this.$router.push({ path: "/changeNickname" }); |
|
||||
}, |
}, |
||||
|
computed: { |
||||
|
...mapState({ |
||||
|
user: "user", |
||||
|
version: "version", |
||||
|
}), |
||||
|
...mapGetters(['themeStyle']) |
||||
|
}, |
||||
|
mounted() { |
||||
|
}, |
||||
|
methods: { |
||||
|
changeNickname() { |
||||
|
this.$router.push({path: "/changeNickname"}); |
||||
|
}, |
||||
|
|
||||
// 切换用户 |
// 切换用户 |
||||
outLogin() { |
outLogin() { |
||||
uni.removeStorageSync("token"); |
uni.removeStorageSync("token"); |
||||
this._router.replace({ |
this._router.replace({ |
||||
path: "/pages/login/index", |
path: "/pages/login/index", |
||||
query: { |
query: { |
||||
notLogin: 1, |
notLogin: 1, |
||||
from: '/pages/accountSettings/accountSettings', |
from: '/pages/accountSettings/accountSettings', |
||||
|
}, |
||||
|
}); |
||||
|
}, |
||||
|
// 退出登录 |
||||
|
loginOut() { |
||||
|
let data = { |
||||
|
lang: uni.getStorageSync('language') || 'en' |
||||
|
}; |
||||
|
Member.logout(data, {toast: true}) |
||||
|
.then(() => { |
||||
|
this.outLogin(); |
||||
|
}) |
||||
|
.catch(() => { |
||||
|
}); |
||||
}, |
}, |
||||
}); |
|
||||
}, |
|
||||
// 退出登录 |
|
||||
loginOut() { |
|
||||
let data = { |
|
||||
lang:uni.getStorageSync('language')||'zh-CN' |
|
||||
}; |
|
||||
Member.logout(data, { toast: true }) |
|
||||
.then(() => { |
|
||||
this.outLogin(); |
|
||||
}) |
|
||||
.catch(() => {}); |
|
||||
}, |
}, |
||||
}, |
|
||||
}; |
}; |
||||
</script> |
</script> |
||||
|
|
||||
<style lang="scss" scoped> |
<style lang="scss" scoped> |
||||
.head-account { |
.head-account { |
||||
font-size: 20px; |
font-size: 20px; |
||||
} |
} |
||||
::v-deep .lb-picker-default-slot{ |
|
||||
font-size: 14px!important; |
::v-deep .lb-picker-default-slot { |
||||
|
font-size: 14px !important; |
||||
} |
} |
||||
</style> |
</style> |
||||
|
|||||