通常,我們通過input 上傳一個(gè)文件時(shí),需要先獲取到圖片的路徑,然后再傳給后端,那么怎么獲取到圖片的路徑呢,js中需要定義FileReder對(duì)象才能獲取到文件的路徑,上代碼
html:
<input?type="file"?accept="image/*"?onchange="upLoad(this)"/>
js:
當(dāng)在圖片加載事件里面獲取到的evt.target.result就是base64的圖片路徑
當(dāng)獲取到路徑后,我們?nèi)绻朕D(zhuǎn)成Blob時(shí),上代碼:
Blob 傳入數(shù)據(jù)只能傳對(duì)象或者數(shù)組,不支持直接傳字符串,轉(zhuǎn)完了以后,我們可以用instanceof來驗(yàn)證一下,轉(zhuǎn)的是否正確,不能直接用正則表達(dá)式來判斷url里是否含有Blob這個(gè)字符串來認(rèn)定這就是Blob,因?yàn)锽lob類型對(duì)象的數(shù)據(jù)里,大概是[size:111,type:"image"]的結(jié)構(gòu)哦