2023-02-22 將選取的文件轉為內存中的臨時地址

目標:選擇的圖片文件,要給到 img 標簽上做純前端的預覽

img 標簽的 src 值

* 只能是圖片的 “鏈接地址”(外鏈http:// 開頭,圖片文件相對路徑)

* 或者是圖片的 base64 字符串(而且字符串還必須是 data:image/png;base64,圖片轉為 base64 字符串)

解決方案1: 文件 -> 內存臨時地址(這個地址只能在 js 內存里不能發給后臺)

語法:URL.CreateObjectURL(文件)? ? 返回值:內存臨時地址

解決方法2:文件 -> base64 字符串

1.創建 FileReader 對象

const fr = new FileReader()

2.調用 readAsDataURL 函數,讀取文件內容

fr.readAsDataURL(files[0])

3.監聽 fr 的 onload 事件

fr.onload = e => {

4.通過 e.target.result 獲取到讀取的結果,值是字符串(base64 格式的字符串)

this.avatar = e.target.result

}



選取文件,原生 input 綁定 change 事件

changemethod(e){

e.target.files[0] 即就是選取的文件,默認模式下只能選擇一個文件

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容