我有影像的檔案輸入
<v-file-input show-size v-model="img" @change="upload(img)" label="Image"></v-file-input>
我正在嘗試讀取它并將檔案轉換為 base64 字串
upload(img) {
console.log('img', img)
var file = img.files
var reader = new FileReader()
reader.onloadend = function () {
console.log('RESULT', reader.result)
}
reader.readAsDataURL(file)
},
我無法讓我的結果運行...請幫助!

uj5u.com熱心網友回復:
您可以使用此功能將檔案轉換為 base64
const getBase64 = (file) => {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => resolve(reader.result);
reader.onerror = (error) => reject(error);
});
};
uj5u.com熱心網友回復:
您看到此錯誤是因為FileReader的readAsDataURL將Blob作為引數。
您當前正在傳遞它undefined(通過運行檢查console.log(file)),因為img它是一個
檔案(它是一個 Blob),并且它沒有files屬性。
將檔案傳遞給它應該可以作業:
// ...
reader.readAsDataURL(img)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/493603.html
標籤:Vue.js 文件 Vuejs2 Vue组件 Vuetify.js
上一篇:如何忽略已經存在的檔案?
下一篇:發送包含文本檔案內容的電子郵件
