no message
This commit is contained in:
parent
600dc3b337
commit
de63efb81d
@ -66,7 +66,7 @@
|
||||
title: { type: String, default: "" },
|
||||
icon: { type: String, default: "el-icon-plus" },
|
||||
action: { type: String, default: "" },
|
||||
apiObj: { type: Object, default: () => {} },
|
||||
api: { type: String, default: "" },
|
||||
name: { type: String, default: config.filename },
|
||||
data: { type: Object, default: () => {} },
|
||||
accept: { type: String, default: "image/gif, image/jpeg, image/png" },
|
||||
@ -77,6 +77,7 @@
|
||||
disabled: { type: Boolean, default: false },
|
||||
round: { type: Boolean, default: false },
|
||||
onSuccess: { type: Function, default: () => { return true } },
|
||||
onRemove: { type: Function, default: () => { return true } },
|
||||
cropper: { type: Boolean, default: false },
|
||||
compress: {type: Number, default: 1},
|
||||
aspectRatio: {type: Number, default: NaN}
|
||||
@ -148,6 +149,10 @@
|
||||
delete this.cropperFile.tempCropperFile
|
||||
},
|
||||
handleRemove(){
|
||||
var os = this.onRemove()
|
||||
if(os!=undefined && os===false){
|
||||
return false
|
||||
}
|
||||
this.clearFiles()
|
||||
},
|
||||
clearFiles(){
|
||||
@ -229,16 +234,13 @@
|
||||
})
|
||||
},
|
||||
request(param){
|
||||
var apiObj = config.apiObj;
|
||||
if(this.apiObj){
|
||||
apiObj = this.apiObj;
|
||||
}
|
||||
var api = this.api ? this.api : config.api;
|
||||
const data = new FormData();
|
||||
data.append(param.filename, param.file);
|
||||
for (const key in param.data) {
|
||||
data.append(key, param.data[key]);
|
||||
}
|
||||
apiObj.post(data, {
|
||||
this.$http.post(api,data, {
|
||||
onUploadProgress: e => {
|
||||
const complete = parseInt(((e.loaded / e.total) * 100) | 0, 10)
|
||||
param.onProgress({percent: complete})
|
||||
@ -249,7 +251,6 @@
|
||||
param.onSuccess(response);
|
||||
return ;
|
||||
}
|
||||
|
||||
param.onError(response.message || "未知错误")
|
||||
}).catch(err => {
|
||||
param.onError(err)
|
||||
@ -262,9 +263,7 @@
|
||||
<style scoped>
|
||||
.el-form-item.is-error .x-upload .el-upload--picture-card {border-color: var(--el-color-danger);}
|
||||
.x-upload .el-upload--picture-card {border-radius: 0;}
|
||||
|
||||
.x-upload .uploader,.x-upload:deep(.el-upload) {width: 100%;height: 100%;}
|
||||
|
||||
.x-upload__img {width: 100%;height: 100%;position: relative;}
|
||||
.x-upload__img .image {width: 100%;height: 100%;}
|
||||
.x-upload__img-actions {position: absolute;top:0;right: 0;display: none;}
|
||||
@ -273,16 +272,13 @@
|
||||
.x-upload__img-actions .del {background: #F56C6C;}
|
||||
.x-upload__img:hover .x-upload__img-actions {display: block;}
|
||||
.x-upload__img-slot {display: flex;justify-content: center;align-items: center;width: 100%;height: 100%;font-size: 12px;background-color: var(--el-fill-color-lighter);}
|
||||
|
||||
.x-upload__uploading {width: 100%;height: 100%;position: relative;}
|
||||
.x-upload__progress {position: absolute;width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;background-color: var(--el-overlay-color-lighter);z-index: 1;padding:10px;}
|
||||
.x-upload__progress .el-progress {width: 100%;}
|
||||
.x-upload__uploading .image {width: 100%;height: 100%;}
|
||||
|
||||
.x-upload .file-empty {width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;flex-direction: column;}
|
||||
.x-upload .file-empty i {font-size: 28px;}
|
||||
.x-upload .file-empty h4 {font-size: 12px;font-weight: normal;color: #8c939d;margin-top: 8px;}
|
||||
|
||||
.x-upload.x-upload-round {border-radius: 50%;overflow: hidden;}
|
||||
.x-upload.x-upload-round .el-upload--picture-card {border-radius: 50%;}
|
||||
.x-upload.x-upload-round .x-upload__img-actions {top: auto;left: 0;right: 0;bottom: 0;}
|
||||
|
@ -58,13 +58,13 @@
|
||||
|
||||
},
|
||||
mounted() {
|
||||
this.$http.post('system/user/get', { uid:this.data.uid }).then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.user = res.data.user;
|
||||
this.token = res.data.token;
|
||||
this.form = res.data.form;
|
||||
}
|
||||
});
|
||||
// this.$http.post('system/user/get', { uid:this.data.uid }).then((res) => {
|
||||
// if (res.code == 200) {
|
||||
// this.user = res.data.user;
|
||||
// this.token = res.data.token;
|
||||
// this.form = res.data.form;
|
||||
// }
|
||||
// });
|
||||
},
|
||||
methods: {
|
||||
updateParentValue(val) {
|
||||
|
@ -4,14 +4,16 @@
|
||||
<el-container>
|
||||
<el-header style="height: auto;display: block;">
|
||||
<div class="user-info-top">
|
||||
<el-avatar :size="70" :src="user.avatar"></el-avatar>
|
||||
<h2>{{ user.nickname || user.username }}</h2>
|
||||
<p><el-tag effect="dark" round size="large" disable-transitions>{{ user.role }}</el-tag></p>
|
||||
|
||||
<x-upload v-model="user.avatar" :data={token:token} v-if="avatarupload" :api="avatarupload" width="100" height="100" icon="el-icon-avatar" ref="uploader" :onRemove="onRemove" class="xuavatar" round :cropper="true" :aspectRatio="1/1">
|
||||
</x-upload>
|
||||
<el-avatar :size="100" v-else :src="user.avatar"></el-avatar>
|
||||
<h2>{{ user.nickname || user.username }}</h2>
|
||||
<!-- <p><el-tag effect="dark" round size="large" disable-transitions>{{ user.role }}</el-tag></p> -->
|
||||
<p>
|
||||
<el-button-group>
|
||||
<el-button type="danger" size="small" style="padding:5px" :icon="Edit">发送消息</el-button>
|
||||
<el-button type="warning" size="small" style="padding:5px" :icon="Share">行为轨迹</el-button>
|
||||
<el-button type="info" size="small" style="padding:5px" :icon="Edit">发送消息</el-button>
|
||||
<el-button type="info" color="#607d8b" size="small" style="padding:5px" :icon="Share">行为轨迹</el-button>
|
||||
</el-button-group>
|
||||
</p>
|
||||
</div>
|
||||
@ -43,6 +45,14 @@
|
||||
</el-container>
|
||||
</template>
|
||||
|
||||
<style>
|
||||
.xuavatar {
|
||||
margin: auto;
|
||||
border-radius: 10px !important;
|
||||
}
|
||||
.xuavatar .el-upload--picture-card{ --el-upload-picture-card-size:80px; border-radius: 10px !important; }
|
||||
</style>
|
||||
|
||||
<script>
|
||||
import { defineAsyncComponent } from 'vue'
|
||||
|
||||
@ -114,17 +124,37 @@
|
||||
]
|
||||
},
|
||||
],
|
||||
user: this.modelValue,
|
||||
user: {},
|
||||
userData: this.modelValue,
|
||||
token: '',
|
||||
avatarupload: '',
|
||||
page: "account"
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
||||
this.loaddata();
|
||||
},
|
||||
methods: {
|
||||
updateValue(event) {
|
||||
const newValue = event.target.value;
|
||||
this.$emit('update:modelValue', newValue);
|
||||
loaddata(){
|
||||
this.$http.post('system/user/get',{uid: this.userData.uid, type:this.type}).then((res) => {
|
||||
if (res.code==200) {
|
||||
Object.assign(this.$data, res.data);
|
||||
return false;
|
||||
}
|
||||
this.$alert(res.message, "提示", {type: 'error'});
|
||||
});
|
||||
},
|
||||
onRemove(){
|
||||
this.$http.post('app/avatar/delete',{token: this.token}).then((res) => {
|
||||
if (res.code==200) {
|
||||
this.userData.avatar = '';
|
||||
this.$refs.uploader.clearFiles();
|
||||
this.$message.success(res.message || "操作成功")
|
||||
return false;
|
||||
}
|
||||
this.$alert(res.message, "提示", {type: 'error'});
|
||||
});
|
||||
return false;
|
||||
},
|
||||
openPage(item){
|
||||
this.page = item.index
|
||||
|
@ -1,9 +1,6 @@
|
||||
import API from "@/api";
|
||||
|
||||
//上传配置
|
||||
|
||||
export default {
|
||||
apiObj: API.common.upload, //上传请求API对象
|
||||
api: '/app/upload', //上传请求API对象
|
||||
filename: "files", //form请求时文件的key
|
||||
successCode: 200, //请求完成代码
|
||||
maxSize: 10, //最大文件大小 默认10MB
|
||||
@ -16,6 +13,5 @@ export default {
|
||||
aid: res.data.aid, //分析图片远程地址结构
|
||||
}
|
||||
},
|
||||
apiObjFile: API.common.uploadFile, //附件上传请求API对象
|
||||
maxSizeFile: 10 //最大文件大小 默认10MB
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user