最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
當前位置: 首頁 - 科技 - 知識百科 - 正文

vue.js圖片轉Base64上傳圖片并預覽的實現方法

來源:懂視網 責編:小采 時間:2020-11-27 22:10:46
文檔

vue.js圖片轉Base64上傳圖片并預覽的實現方法

vue.js圖片轉Base64上傳圖片并預覽的實現方法:對于前端人員來說,圖片處理是一個很常見的需求,由于圖片稍微特殊,現在多數做法都是使用調用ajax接口通過http方法來提交,例如post方法提交,后臺處理后返回一個圖片路徑給前端,前端根據這個路徑寫入img標簽,但是基于當前的前后端分離的開發模式下,前后
推薦度:
導讀vue.js圖片轉Base64上傳圖片并預覽的實現方法:對于前端人員來說,圖片處理是一個很常見的需求,由于圖片稍微特殊,現在多數做法都是使用調用ajax接口通過http方法來提交,例如post方法提交,后臺處理后返回一個圖片路徑給前端,前端根據這個路徑寫入img標簽,但是基于當前的前后端分離的開發模式下,前后

對于前端人員來說,圖片處理是一個很常見的需求,由于圖片稍微特殊,現在多數做法都是使用調用ajax接口通過http方法來提交,例如post方法提交,后臺處理后返回一個圖片路徑給前端,前端根據這個路徑寫入img標簽,但是基于當前的前后端分離的開發模式下,前后端代碼往往不在同一個系統目錄下,而且部署時可能liunx路徑與windows路徑不一樣,這樣后期路徑更改可能會導致維護困難問題出現。

針對這種問題,這里我推薦使用圖片轉base64格式,再發給后端,后端只需將轉碼結果存入數據庫即可,前端調用接口直接獲取到base64數據直接寫入img src 標簽即可

下面使用element ui upload組件實現思路

代碼如下:

 <el-upload
 ref='upload'
 :auto-upload='false' 
 :file-list="fileList" 
 :multiple='false'
 :limit="1"
 :on-exceed="handleExceed"
 :http-request="uploadFiles" 
 accept="image/jpeg,image/gif,image/png"
 action=''
 :on-change='changeUpload' 
 >
 <el-button slot="trigger" size="mini" type="primary">選取圖片</el-button>
 <span> </span>
 <el-button @click='uploadFiles' size="mini" type="primary">點擊上傳</el-button>
 </el-upload> 

js部分

 //點擊上傳圖片,上傳成功返回圖片路徑 
 uploadFiles(){
 var That=this;
 let file=this.$refs.upload.$refs['upload-inner'].$refs.input; //獲取文件數據
 let fileList=file.files; 
 var imgFile;
 let reader = new FileReader(); //html5讀文件
 reader.readAsDataURL(fileList[0]); //轉BASE64 
 reader.onload=function(e) { //讀取完畢后調用接口
 imgFile = e.target.result;
 let obj={
 id: "loginLogo",
 configGroup: "logo",
 configItem : "loginLogo",
 itemValue : imgFile 
 }
 return BaseApi.uploadFiles(obj).then((res)=>{
 if(res.status=='SUCCESS'){
 AlertBox('圖片上傳成功!','success',true).then(()=>{
  return That.getSysLogo(); //調用獲取base64數據接口
 });
 }else{
 Alert('圖片上傳失敗',res);
 return ''
 }
 })

 }; 
 },

最后在界面img src標簽中綁定That.getSysLogo()接口返回的base64字符串即可!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

vue.js圖片轉Base64上傳圖片并預覽的實現方法

vue.js圖片轉Base64上傳圖片并預覽的實現方法:對于前端人員來說,圖片處理是一個很常見的需求,由于圖片稍微特殊,現在多數做法都是使用調用ajax接口通過http方法來提交,例如post方法提交,后臺處理后返回一個圖片路徑給前端,前端根據這個路徑寫入img標簽,但是基于當前的前后端分離的開發模式下,前后
推薦度:
標簽: 圖片 VUE 實現
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
国产精品久久久久精品…-国产精品可乐视频最新-亚洲欧美重口味在线-欧美va免费在线观看