最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2017年09月05日 16:44:03   投稿:zx  
這篇文章主要介紹了Angular2里獲取(input file)上傳文件的內(nèi)容的方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

最近在用Angular2,需要有一個(gè)上傳文件的功能,但是又不想用庫(kù),所以直接用原生的input file 標(biāo)簽。

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

然后想獲取上傳的內(nèi)容,于是先想了個(gè)愚蠢的方法,先通過(guò)id獲取到這個(gè)input標(biāo)簽,然后再獲取其中上傳的內(nèi)容

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

結(jié)果就報(bào)錯(cuò)了。然后看提示說(shuō)HTMLElement沒(méi)有files方法。于是在es6里找了下有files屬性的類(lèi)型,是HTMLInputElement類(lèi)型。于是就強(qiáng)制它轉(zhuǎn)換成這個(gè)類(lèi)型。

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

結(jié)果還是不行,最后改成了先轉(zhuǎn)換類(lèi)型再調(diào)用屬性就可以了。

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

后面發(fā)現(xiàn)這種方式好像有點(diǎn)愚蠢,于是換了一個(gè)方法,用angular2里的$event來(lái)獲取輸入內(nèi)容,里面也包括選擇上傳的文件。

 <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);

最后清空選擇上傳的內(nèi)容可以用

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

不知道有沒(méi)有更好的方法,歡迎討論和指正。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

连州市| 秭归县| 通城县| 元阳县| 天等县| 江都市| 祁连县| 孙吴县| 东安县| 恩施市| 海口市| 承德县| 平山县| 灌云县| 关岭| 花莲市| 南安市| 余庆县| 金川县| 沙坪坝区| 含山县| 临海市| 澜沧| 门源| 南安市| 左权县| 新邵县| 军事| 云阳县| 南宁市| 金乡县| 荆门市| 平塘县| 林甸县| 思茅市| 宁都县| 司法| 德安县| 久治县| 绍兴县| 五华县|