单图
-
返回格式:字符串
-
使用方式
<imageUpload v-model="form.pic"/>
-
组件页面
<template>
<div class="component-upload-image">
<el-upload
:action="uploadImgUrl"
list-type="picture-card"
:on-success="handleUploadSuccess"
:before-upload="handleBeforeUpload"
:on-error="handleUploadError"
name="file"
:show-file-list="false"
:data="qnData"
style="display: inline-block; vertical-align: top"
>
<el-image v-if="!value" :src="value">
<div slot="error" class="image-slot">
<i class="el-icon-plus"/>
</div>
</el-image>
<div v-else class="image">
<el-image :src="value" :style="`width:150px;height:150px;`" fit="fill"/>
<div class="mask">
<div class="actions">
<span title="预览" @click.stop="dialogVisible = true">
<i class="el-icon-zoom-in"/>
</span>
<span title="移除" @click.stop="removeImage">
<i class="el-icon-delete"/>
</span>
</div>
</div>
</div>
</el-upload>
<el-dialog :visible.sync="dialogVisible" title="预览" width="800" append-to-body>
<img :src="value" style="display: block; max-width: 100%; margin: 0 auto;">
</el-dialog>
</div>
</template>
<script>
import {qnConfig} from "@/api/common/common";
import {getUuid,parseTime} from "@/utils/math";
export default {
data() {
return {
dialogVisible: false,
uploadImgUrl: "http://upload.qiniup.com", // 上传七牛服务器地址
qnConfig: {},
qnData: {},
};
},
props: {
value: {
type: String,
default: "",
},
// 文件类型, 例如['png', 'jpg', 'jpeg']
fileType: {
type: Array,
default: () => ['png', 'jpg', 'jpeg',