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>
到此這篇關(guān)于vue通過elementUI組件實現(xiàn)圖片預覽效果的文章就介紹到這了,更多相關(guān)vue elementUI圖片預覽內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue3.0 Reactive數(shù)據(jù)更新頁面沒有刷新的問題
這篇文章主要介紹了vue3.0 Reactive數(shù)據(jù)更新頁面沒有刷新的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04前端框架學習總結(jié)之Angular、React與Vue的比較詳解
這篇文章主要跟大家分享了關(guān)于前端框架中Angular.js、React.js與Vue.js的全方位比較,文章介紹的非常詳細,對大家進行區(qū)分對比這三者之間的差異區(qū)別很有幫助,需要的朋友可以參考借鑒,下面來一起看看吧。2017-03-03Vue的移動端多圖上傳插件vue-easy-uploader的示例代碼
這篇文章主要介紹了Vue的移動端多圖上傳插件vue-easy-uploader的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11