vue通過elementUI組件實現(xiàn)圖片預覽效果
更新時間:2023年09月27日 10:15:23 作者:SwJieJie
我們在開發(fā)中經(jīng)常會遇到通過點擊某個按鈕或者文字實現(xiàn)圖片的預覽功能,這里我們分別介紹vue2和vue3里面如何實現(xiàn)圖片預覽方法,需要的朋友可以參考下
Vue2通過el-image的組件實現(xiàn)圖片預覽
1,通過ref給el-image組件上面獲取DOM元素,然后我們通過clickHandler方法來實現(xiàn)點擊圖片預覽
<template>
<div>
<el-button type="primary" @click=PreviewImg() >圖片</el-button>
<el-image
ref="elImage"
style="width: 0; height: 0;"
:src="bigImageUrl"
:preview-src-list="logicImageList">
</el-image>
</div>
</template>
<script>
export default {
data () {
return {
bigImageUrl: '',
logicImageList: []
}
},
methods :{
PreviewImg() {
// 調(diào)用接口之后獲取圖片數(shù)據(jù)
this.logicImageList = res.data.map((item) => { return item.accessUrl })
this.$nextTick(() => {
this.$refs.elImage.clickHandler()
})
}
}
}
</script>Vue3通過el-image-viewer的組件實現(xiàn)圖片預覽
2,這里我們區(qū)別vue2的使用,我們通過v-if判斷是否預覽彈窗圖片的。
<template>
<div>
<el-button type="primary" @click=PreviewImg() >圖片</el-button>
<el-image-viewer
style="width: 100px; height: 100px"
v-if="state.imgViewerVisible"
@close="closeImgViewer"
:url-list="state.srcList">
</el-image-viewer>
</div>
</template>
<script setup lang="ts" name="uploadFile">
import { nextTick, reactive } from 'vue';
const state: any = reactive({
imgViewerVisible: false,
srcList: []
})
function PreviewImg() {
// 調(diào)用接口之后獲取圖片數(shù)據(jù)
state.srcList= res.data.map((item) => { return item.accessUrl })
state.imgViewerVisible = true
}
function closeImgViewer () {
state.imgViewerVisible = false
}
}
</script>到此這篇關于vue通過elementUI組件實現(xiàn)圖片預覽效果的文章就介紹到這了,更多相關vue elementUI圖片預覽內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue3.0 Reactive數(shù)據(jù)更新頁面沒有刷新的問題
這篇文章主要介紹了vue3.0 Reactive數(shù)據(jù)更新頁面沒有刷新的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04
前端框架學習總結(jié)之Angular、React與Vue的比較詳解
這篇文章主要跟大家分享了關于前端框架中Angular.js、React.js與Vue.js的全方位比較,文章介紹的非常詳細,對大家進行區(qū)分對比這三者之間的差異區(qū)別很有幫助,需要的朋友可以參考借鑒,下面來一起看看吧。2017-03-03
Vue的移動端多圖上傳插件vue-easy-uploader的示例代碼
這篇文章主要介紹了Vue的移動端多圖上傳插件vue-easy-uploader的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11

