91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Angular2里獲取(input file)上傳文件的內容的方法

發布時間:2020-10-02 20:50:17 來源:腳本之家 閱讀:552 作者:zx 欄目:web開發

最近在用Angular2,需要有一個上傳文件的功能,但是又不想用庫,所以直接用原生的input file 標簽。

<input type="file" id="newUpload" >

然后想獲取上傳的內容,于是先想了個愚蠢的方法,先通過id獲取到這個input標簽,然后再獲取其中上傳的內容

 const uploadsFile = document.getElementById(name).files[0];

結果就報錯了。然后看提示說HTMLElement沒有files方法。于是在es6里找了下有files屬性的類型,是HTMLInputElement類型。于是就強制它轉換成這個類型。

 const uploadsFile=<HTMLInputElement>document.getElementById(name).files[0];

結果還是不行,最后改成了先轉換類型再調用屬性就可以了。

  const uploadsFile = <HTMLInputElement>document.getElementById(name);
  const file = uploadsFile.files[0];

后面發現這種方式好像有點愚蠢,于是換了一個方法,用angular2里的$event來獲取輸入內容,里面也包括選擇上傳的文件。

 <input type="file" id="newUpload" (change)="getUpload(newUpload, $event)" >

選擇的文件在event.target.files里

private getUpload(obj, e) {
  if (e.target.files[0]) {
   const file = e.target.files[0];
   obj.file = file;
  }
 }

接著就可以把它放到formdata里了

 const formData = new FormData();
  formData.append('file', this.upload.file);

最后清空選擇上傳的內容可以用

 let upload = <HTMLInputElement>document.querySelector(selectorName);
  upload.value = null;

不知道有沒有更好的方法,歡迎討論和指正。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

日喀则市| 马鞍山市| 苍山县| 上杭县| 海门市| 翼城县| 喀喇| 大冶市| 大城县| 永川市| 松阳县| 白沙| 崇明县| 宽甸| 长岭县| 宁南县| 杭锦旗| 海宁市| 万宁市| 康乐县| 清原| 涟水县| 唐河县| 泾阳县| 松潘县| 边坝县| 阜康市| 璧山县| 吴川市| 石城县| 洪洞县| 昌平区| 新竹县| 贵港市| 丰县| 思茅市| 濮阳市| 曲沃县| 西昌市| 安平县| 衡阳市|