.upload-pictures-warp {
display: inline-block;
vertical-align: bottom;
position: relative;
}
.upload-pictures-warp-content {
border: 1px solid #cccccc;
width: 150px;
height: 150px;
line-height: 150px;
text-align: center;
}
.upload-pictures-input {
position: absolute;
top: 0;
left: 0;
width: 150px;
height: 150px;
opacity: 0;
cursor: pointer;
}
.upload-pictures-img {
width: 300px;
height: 300px;
border: 1px solid skyblue;
margin-top: 27px;
vertical-align: bottom;
}
.add-check{
margin-bottom: 0 !important;
margin-left: 14px;
}
<div class="form-group">
<label class="col-sm-2 control-label">图片</label>
<div class="col-sm-10">
<div id="upload-pictures-warp isShow">
<div v-if="flag != 0" class="upload-pictures-warp-content">点击上传</div>
<input type="file" @change='uploadPhoto' class="upload-pictures-input"
name="file" />
<img :src="detailForm.img" class="upload-pictures-img" />
<div @click="check(detailForm.img)" class="btn btn-warning btn-sm add-check"><i
class="glyphicon glyphicon-eye-open"></i>
预览 </div>
</div>
</div>
</div>
function isAssetTypeAnImage(ext) {
return (
[
'png',
'jpg',
'jpeg',
'bmp',
'gif',
'webp',
'psd',
'svg',
'tiff',
].indexOf(ext.toLowerCase()) !== -1
)
}
created() {
if (flag == 0 || flag == 1) {
this.getBannerDetails()
}
if (flag == 0) {
$('.isShow').css('background', '#cccccc !important').prop("disabled", true);
}
},
uploadPhoto(e) {
var that = this
var photoFile = e.target.value
var index = photoFile.lastIndexOf(".");
var ext = photoFile.substr(index + 1);
if (isAssetTypeAnImage(ext) != true) {
alert("图片格式不正确");
return;
}
var files = new FormData()
files.append('file', e.currentTarget.files[0])
axios({
method: "POST",
url: 'https://api.dongjinyu.com/common/file/upload',
data: files,
headers: {
}
}).then(function (res) {
if (res.status === 200) {
var ret = res.data;
switch (ret.code) {
case 200:
that.detailForm.img = ret.data
break;
case 500:
if (typeof err === 'function') {
alert(ret)
} else {
alert(ret.msg)
}
break;
case 401:
break;
}
} else {
console.error('network error', res);
}
})
},
}