属性'split'在'string |类型上不存在。 ArrayBuffer”。属性'split'在'ArrayBuffer'类型上不存在.ts(2339)

时间:2019-07-25 13:18:13

标签: angular typescript split base64 angular7

“我想拆分一个base64Audio。想删除它-text.data:audio/wav;base64,那么正确的代码是什么?”

“这是针对Angular 7的。”

 const reader = new FileReader();
    reader.readAsDataURL(data.blob);
    let base64Audio ;
    reader.onloadend = function() {
      const base64data = reader.result;
      console.log(base64data);

     base64Audio = base64data.split(' , ')[1];
      console.log(base64Audio);

“我希望输出应该仅是分割文本”

2 个答案:

答案 0 :(得分:0)

const reader = new FileReader();
reader.readAsDataURL(data.blob);
let base64Audio ;
reader.onloadend = function() {
const base64data = reader.result as string;
console.log(base64data);
base64Audio = base64data.replace("data:audio/wav;base64,", "");
console.log(base64Audio);

答案 1 :(得分:0)

在使用.split()之前尝试使用.slice():

this.urlPath = this.urlpath.slice(0, 34);

这将帮助您获得所需的阵列,并删除不需要的阵列,然后尝试从切片的部分中获得所需的阵列,然后从那里尝试分离的阵列。

this.urlname = this.response.responseList[0].FileName;
this.urlname = this.urlname.split(".", 1);

这是打字稿示例,我在分割前使用了切片,因为我也遇到了相同的错误... 完整示例链接https://stackblitz.com/edit/angular-jyjs3v