之前為了實現input[type=file]選擇圖片后實時展示圖片,是把圖片上傳后,后端返回路徑再顯示
感覺多此一舉,這樣的方法實在太笨了,也太慢了,也就摸索出另一種方法 FileReader
#html
<input type="file" id="file"/>
<img src="" id="img"/>
<p id="text"></p>
#js
<script>
document.querySelector('#file').onchange = function (){
if(this.files.length){
let file = this.files[0];
let reader = new FileReader();
//新建 FileReader 對象
reader.onload = function(){
// 當 FileReader 讀取文件時候,讀取的結果會放在 FileReader.result 屬性中
document.querySelector('#img').src = this.result;
document.querySelector('#text').innerHTML = this.result;
};
// 設置以什么方式讀取文件,這里以base64方式
reader.readAsDataURL(file);
}
}
</script>
參考:https://blog.csdn.net/qq_38789941/article/details/95309081
