91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue中element的el-image圖片預覽下載功能怎么實現

發布時間:2023-04-15 14:09:31 來源:億速云 閱讀:273 作者:iii 欄目:開發技術

這篇文章主要講解了“vue中element的el-image圖片預覽下載功能怎么實現”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“vue中element的el-image圖片預覽下載功能怎么實現”吧!

一、安裝element-ui

1. 安裝element-ui

在項目終端輸入以下代碼完成element-ui的安裝

npm i element-ui -S

 2. 檢查是否安裝成功

查看配置文件package.json,是否有element-ui組件的版本號

vue中element的el-image圖片預覽下載功能怎么實現

3. 引用element-ui組件

在main.js文件中輸入以下代碼,引入element

import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
 
Vue.use(ElementUI)

二、改造步驟

修改代碼:

通過點擊放大時,添加點擊事件,然后通過append 添加 按鈕并且綁定事件,還是看下圖吧,兄弟們,粘起來。

<template>
<div >
         <waterfall
             @loadmore="loadmore"
             :col=4
             :lazy-distance="300"
             :load-distance="300"
             :data="xx">
           <div class="cell-item zxzx demo-image__preview "  v-for="(item,index) in xx" :key="index" @click="checkImage" >
             <el-image
                 
                 :src="item.img1"
                 :preview-src-list="[item.img]">
             </el-image>
             <p >{{item.createTime}}</p>
           </div>
         </waterfall>
       </div>
</template>
 
<script>
 mounted() {
window.cl = this.cl
},
methods: {
cl() {
      let srcUrl=document.querySelector('.el-image-viewer__img').src;
      this.downloadIamge(srcUrl,srcUrl)
    },
 checkImage(){//這個事件要綁定el-image父級盒子上
      console.log('點擊事件');
      let a=document.querySelector('.el-image-viewer__actions__inner');
      // $(a).append(`<i class="el-icon-download" onclick="installImage()"></i>`)
      // a.append( `<i class="el-icon-download" onclick="cl()"></i>`)
      console.log(a)
      let ff = document.createElement('i')
      ff.innerHTML = `<i class="el-icon-download" onclick="cl()"></i>`
      a.appendChild(ff)
    },
    downloadIamge(imgsrc, name) {//下載圖片地址和圖片名
      let image = new Image();
      // 解決跨域 Canvas 污染問題
      image.setAttribute("crossOrigin", "anonymous");
      image.onload = function() {
        let canvas = document.createElement("canvas");
        canvas.width = image.width;
        canvas.height = image.height;
        let context = canvas.getContext("2d");
        context.drawImage(image, 0, 0, image.width, image.height);
        let url = canvas.toDataURL("image/png"); //得到圖片的base64編碼數據
        let a = document.createElement("a"); // 生成一個a元素
        let event = new MouseEvent("click"); // 創建一個單擊事件
        a.download = name || "photo"; // 設置圖片名稱
        a.href = url; // 將生成的URL設置為a.href屬性
        a.dispatchEvent(event); // 觸發a的單擊事件
      };
      image.src = imgsrc;
    },
}
</script>

感謝各位的閱讀,以上就是“vue中element的el-image圖片預覽下載功能怎么實現”的內容了,經過本文的學習后,相信大家對vue中element的el-image圖片預覽下載功能怎么實現這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

三江| 名山县| 灵宝市| 伊金霍洛旗| 柳州市| 扶绥县| 建水县| 启东市| 元氏县| 石河子市| 仪陇县| 博兴县| 乌兰察布市| 永清县| 奉节县| 大连市| 乐都县| 新泰市| 双流县| 水城县| 正宁县| 托克逊县| 昌邑市| 固阳县| 象山县| 南召县| 苍山县| 罗山县| 武义县| 阜宁县| 牙克石市| 饶河县| 桦甸市| 滦南县| 兴业县| 松滋市| 鄂托克前旗| 靖江市| 灵台县| 利川市| 宁河县|