作者 RuoYi

图片组件添加预览功能

@@ -17,9 +17,12 @@ @@ -17,9 +17,12 @@
17 </div> 17 </div>
18 </el-image> 18 </el-image>
19 <div v-else class="image"> 19 <div v-else class="image">
20 - <el-image :src="value" /> 20 + <el-image :src="value" :style="`width:150px;height:150px;`" fit="fill"/>
21 <div class="mask"> 21 <div class="mask">
22 <div class="actions"> 22 <div class="actions">
  23 + <span title="预览" @click.stop="dialogVisible = true">
  24 + <i class="el-icon-zoom-in" />
  25 + </span>
23 <span title="移除" @click.stop="removeImage"> 26 <span title="移除" @click.stop="removeImage">
24 <i class="el-icon-delete" /> 27 <i class="el-icon-delete" />
25 </span> 28 </span>
@@ -27,6 +30,9 @@ @@ -27,6 +30,9 @@
27 </div> 30 </div>
28 </div> 31 </div>
29 </el-upload> 32 </el-upload>
  33 + <el-dialog :visible.sync="dialogVisible" title="预览" width="800" append-to-body>
  34 + <img :src="value" style="display: block; max-width: 100%; margin: 0 auto;">
  35 + </el-dialog>
30 </div> 36 </div>
31 </template> 37 </template>
32 38
@@ -36,6 +42,7 @@ import { getToken } from "@/utils/auth"; @@ -36,6 +42,7 @@ import { getToken } from "@/utils/auth";
36 export default { 42 export default {
37 data() { 43 data() {
38 return { 44 return {
  45 + dialogVisible: false,
39 uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/upload", // 上传的图片服务器地址 46 uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/upload", // 上传的图片服务器地址
40 headers: { 47 headers: {
41 Authorization: "Bearer " + getToken(), 48 Authorization: "Bearer " + getToken(),
@@ -76,10 +83,6 @@ export default { @@ -76,10 +83,6 @@ export default {
76 </script> 83 </script>
77 84
78 <style scoped lang="scss"> 85 <style scoped lang="scss">
79 -.avatar {  
80 - width: 100%;  
81 - height: 100%;  
82 -}  
83 .image { 86 .image {
84 position: relative; 87 position: relative;
85 .mask { 88 .mask {