chenjiangyang

HTML:

<input type="file"  (change)="onChange($event)"   value=" " id=\'fileUpload\' >   / /  input会在页面上渲染成一个按钮,点击按钮,会打开本地文件夹, 重点在 type=\'file\';

  

 
JS:
onChange(e){
      console.log(e);
      const file = e.srcElement.files[0]; // 获取从上传本地文件转换的数据
      const isJpgOrPng = file.type === \'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\';  // 判断文件类型
      if (!isJpgOrPng) {
        this.message.error(\'You Can Only Upload Xlsx File!\');
        return;
      }
      const data = {
        Base64: null,
        FileName: file.name
      };
      const reader = new FileReader();
      reader.readAsDataURL(file);
      reader.onload = (e) => {
        data.Base64 = e.target[\'result\']; // 获取文件装换后的Base64位文件
        data.Base64 = data.Base64.split(\'base64,\')[1];  // Base64位文件获取时,不能直接传给后台,要将base64文件开头的前缀剔除,不然服务器会提示有中文字符,无法解析 
        this.apiService.post(\'XXX\XXX\X\', data).subscribe(res => {
          if ( res.Result ) {
            this.message.create(\'success\', \'Import Succeeded\');
          }
        });
        // console.log(e.target.result);
      };
    }

  

 

分类:

技术点:

相关文章: