国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

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

2019-11-19 15:32:54
字體:
來源:轉載
供稿:網友

最近在用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;

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

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 辉县市| 孟连| 监利县| 平湖市| 陆河县| 东乌珠穆沁旗| 永安市| 嵊泗县| 渝中区| 来宾市| 湘阴县| 广德县| 朔州市| 云浮市| 抚顺县| 筠连县| 吴桥县| 鱼台县| 辽阳市| 垫江县| 中西区| 栾城县| 仙居县| 兴安县| 观塘区| 上思县| 和平县| 双峰县| 黑水县| 贵港市| 双流县| 新化县| 常山县| 云和县| 普宁市| 铜山县| 张家港市| 安福县| 平远县| 鹰潭市| 齐河县|