Element-ui:头像上传

Posted Gendan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Element-ui:头像上传相关的知识,希望对你有一定的参考价值。

<template>

<div>
    <!-- action    必选参数,上传的地址  七牛云:http://up-z1.qiniu.com/-->
    <!-- data    上传时附带的额外参数 -->
    <!-- on-success    文件上传成功时的钩子 -->
    <!-- before-upload    上传文件之前的钩子,参数为上传的文件,若返回 false 或者返回 Promise 且被 reject,则停止上传。 -->
    <el-upload
        class="avatar-uploader"
        action="http://up-z1.qiniu.com/"  
        :show-file-list="false"
        :on-success="handleAvatarSuccess"
        :before-upload="beforeAvatarUpload"
        :data=\'postData\'>
        <img v-if="imageUrl" :src="imageUrl" class="avatar">
        <i v-else class="el-icon-plus avatar-uploader-icon"></i>
    </el-upload>
</div>

</template>
<script>
import axios from \'axios\'
export default {

data() {
    return {
        imageUrl: \'\',
        postData:{
            // 上传时要带上附带的token
            token:\'\'
        }
    }
},
methods: {
    // 获取七牛云token
    getToken(){
        this.axios.get(\'sadmin/gettoken/\').then(res=>{
            console.log(res.data)
            this.postData.token = res.data.token
        })
    },
    // 文件上传成功的钩子
    handleAvatarSuccess(res, file) {
        this.imageUrl = [利率期货](https://www.gendan5.com/ff/if.html)\'cdn测试域名\'+res.key;
        console.log(this.imageUrl)
    },
    beforeAvatarUpload(file) {
        const isJPG = file.type === \'image/jpeg\';
        const isLt2M = file.size / 1024 / 1024 < 2;
        if (!isJPG) {
        this.$message.error(\'上传头像图片只能是 JPG 格式!\');
        }
        if (!isLt2M) {
        this.$message.error(\'上传头像图片大小不能超过 2MB!\');
        }
        return isJPG && isLt2M;
    }
},
created() {
    this.getToken()
}

}
</script>
<style scoped>
.avatar-uploader .el-upload {

border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;

}
.avatar-uploader .el-upload:hover {

border-color: #409EFF;

}
.avatar-uploader-icon {

font-size: 28px;
color: #8c939d;
width: 178px;
height: 178px;
line-height: 178px;
text-align: center;

}
.avatar {

width: 178px;
height: 178px;
display: block;

}
</style>
七牛云的存储对象的地区对应表
七牛的一张存储区域表

存储区域区域代码客户端上传地址服务端上传地址
华东ECNhttp(s)://upload.qiniup.comhttp(s)://up.qiniup.com
华北NCNhttp(s)://upload-z1.qiniup.comhttp(s)://up-z1.qiniup.com
华南SCNhttp(s)://upload-z2.qiniup.comhttp(s)://up-z2.qiniup.com
北美NAhttp(s)://upload-na0.qiniup.comhttp(s)://up-na0.qiniup.com

以上是关于Element-ui:头像上传的主要内容,如果未能解决你的问题,请参考以下文章

如何上传图片到七牛云

改造vue-quill-editor: 结合element-ui上传图片到服务器

图片上传,头像上传

信小程序上传头像

如何java中实现上传头像功能?

C#如何实现上传头像,最好能够代码加文字阐述一下实现原理