| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- <template>
- <el-card style="margin: 2px 1px;">
- <div slot="header" class="clearfix">
- <span>{{ $t('profile.personalInformation') }}</span>
- </div>
- <el-form v-loading="loading" wi>
- <el-form-item :label="$t('shop.memberCode')">
- <el-input v-model="user.name" size="medium" prefix-icon="el-icon-user-solid" readonly />
- </el-form-item>
- <el-form-item :label="$t('shop.memberName')">
- <el-input v-model="user.realName" size="medium" prefix-icon="el-icon-user" readonly />
- </el-form-item>
- <el-form-item :label="$t('shop.phoneNumber')">
- <el-input v-model.trim="user.mobile" size="medium" prefix-icon="el-icon-phone-outline" readonly />
- </el-form-item>
- <el-form-item :label="$t('user.email')">
- <el-input v-model.trim="user.email" size="medium" prefix-icon="el-icon-s-comment" />
- </el-form-item>
- <el-form-item>
- <el-button type="primary" size="small" @click="submit">{{ $t('common.save') }}</el-button>
- </el-form-item>
- </el-form>
- </el-card>
- </template>
- <script>
- import { updateInfo } from '@/api/user'
- import usersInfo from '@/utils/usersInfo'
- export default {
- props: {
- user: {
- type: Object,
- default: () => {
- return {
- name: '',
- email: '',
- mobile: '',
- realName: ''
- }
- }
- }
- },
- data() {
- return {
- loading: false
- }
- },
- methods: {
- submit() {
- const data = {
- bankNo: '1',
- bankAddress: '1',
- email: this.user.email,
- mobile: this.user.mobile,
- nation: '',
- openBank: '',
- realName: this.user.realName
- }
- this.loading = true
- updateInfo(data).then(() => {
- setTimeout(() => {
- this.loading = false
- }, 1.5 * 1000)
- this.$message({
- message: 'User information has been updated successfully.',
- type: 'success',
- duration: 5 * 1000
- })
- // 覆盖localStorage
- usersInfo.userEmail(this.user.email)
- // 页面重载
- location.reload()
- }).catch((err) => {
- this.$message({
- message: err,
- type: 'error',
- duration: 5 * 1000
- })
- this.loading = false
- })
- }
- }
- }
- </script>
|