全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Angular2里获取(input file)上传文件的内容的方法

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

不知道有没有更好的方法,欢迎讨论和指正。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Angular2获取上传文件内容  # Angularjs上传文件组件flowjs功能  # 基于AngularJS的拖拽文件上传的实例代码  # SpringMvc+Angularjs 实现多文件批量上传  # Angular2-primeNG文件上传模块FileUpload使用详解  # AngularJS 文件上传控件 ng-file-upload详解  # AngularJS+Bootstrap实现多文件上传与管理  # 学习使用AngularJS文件上传控件  # AngularJS向后端ASP.NET API控制器上传文件  # Angular Js文件上传之form-data  # angularjs客户端实现压缩图片文件并上传实例  # 上传  # 就可以  # 是在  # 可以用  # 把它  # 错了  # 想了  # 换了  # 然后再  # 找了  # 又不  # 转换成  # 想用  # 里了  # 大家多多  # 清空  # 有一个  # 上传文件  # 改成了  # lt 


相关文章: 如何快速搭建高效可靠的建站解决方案?  广州营销型建站服务商推荐:技术优势与SEO优化解析  如何正确下载安装西数主机建站助手?  湖北网站制作公司有哪些,湖北清能集团官网?  建站主机默认首页配置指南:核心功能与访问路径优化  如何选择最佳自助建站系统?快速指南解析优劣  网站制作员失业,怎样查看自己网站的注册者?  如何快速生成ASP一键建站模板并优化安全性?  jQuery 常见小例汇总  建站之星24小时客服电话如何获取?  网站app免费制作软件,能免费看各大网站视频的手机app?  北京制作网站的公司,北京铁路集团官方网站?  建站之星CMS建站配置指南:模板选择与SEO优化技巧  如何配置FTP站点权限与安全设置?  宝塔新建站点为何无法访问?如何排查?  如何在云虚拟主机上快速搭建个人网站?  如何实现建站之星域名转发设置?  如何通过商城自助建站源码实现零基础高效建站?  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  如何在服务器上三步完成建站并提升流量?  如何在橙子建站上传落地页?操作指南详解  如何在阿里云香港服务器快速搭建网站?  西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  安云自助建站系统如何快速提升SEO排名?  如何用PHP快速搭建高效网站?分步指南  建站之星安装后如何自定义网站颜色与字体?  建站主机助手选型指南:2025年热门推荐与高效部署技巧  建站之星客服服务时间及联系方式如何?  如何在IIS中新建站点并配置端口与IP地址?  网站代码制作软件有哪些,如何生成自己网站的代码?  c# 在ASP.NET Core中管理和取消后台任务  已有域名能否直接搭建网站?  相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?  如何配置WinSCP新建站点的密钥验证步骤?  建站之星后台密码遗忘如何找回?  如何用搬瓦工VPS快速搭建个人网站?  北京建设网站制作公司,北京古代建筑博物馆预约官网?  浅谈Javascript中的Label语句  建站主机数据库如何配置才能提升网站性能?  如何在腾讯云服务器上快速搭建个人网站?  建站之星下载版如何获取与安装?  沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  一键网站制作软件,义乌购一件代发流程?  Thinkphp 中 distinct 的用法解析  如何选择可靠的免备案建站服务器?  ,巨量百应是干嘛的?  建站之星安装模板失败:服务器环境不兼容?  深入理解Android中的xmlns:tools属性 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。