這里用的是IVIEW ui庫的upload的控件,ui庫的用法都差不多,只是入?yún)⒚Q有差異,讀取svg和圖片的方法是一樣的
//使用場景:svg圖需要存入數(shù)據(jù)庫是(轉(zhuǎn)完以后base64的大小會比svg大很多)
beforeUpload(file){
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = e =>{
const baesCode = e.target.result;
return baseCode;
}
}
如何將base64轉(zhuǎn)回svg
//使用場景:從api動態(tài)獲取到svg的base64碼,且需要動態(tài)更改svg的顏色,否則,直接用base64碼就好了
baseCodeToSVG(baseCode){
if(baseCode){
//去除 data:image/svg+xml;base64,
let encoded = baseCode.substring(26);
let decoded = atob(encoded);
return decoded;
//decoded:<svg><path>...</path></svg>
}
}