Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 如何在函数级别获取JSON并在Angular2的HTML页面上显示_Typescript - Fatal编程技术网

Typescript 如何在函数级别获取JSON并在Angular2的HTML页面上显示

Typescript 如何在函数级别获取JSON并在Angular2的HTML页面上显示,typescript,Typescript,如何在HTML页面上打印Var jsonText中的数据。 我们如何访问局部变量中的数据并将其打印在HTML页面上。?我们可以访问所有本地数据的任何方法?? 这是将CSV数据解析为JSON然后获取数据的代码 export class ProductListComponent { } ngOnInit(): void { } public fileChangeEvent(event: any){ if (event.target.files &&a

如何在HTML页面上打印Var jsonText中的数据。 我们如何访问局部变量中的数据并将其打印在HTML页面上。?我们可以访问所有本地数据的任何方法?? 这是将CSV数据解析为JSON然后获取数据的代码

export class ProductListComponent  {


        }
ngOnInit(): void { 

}

 public fileChangeEvent(event: any){
      if (event.target.files && event.target.files[0]) {
      const reader = new FileReader();
      reader.onload = () => {
      let text = reader.result;
      this.finalDataToBePassed(text);
      return JSON.stringify(text);
  };

  reader.readAsText(event.target.files[0]);

    }
} 


public finalDataToBePassed(text:any){
 var lines = text.split("\n");
      var duplicates= [];
      var result = []; 
      var counts = {};
      var headers = lines[0].split(",");
      for (var i = 1; i < lines.length; i++) {
          var line = lines[i];
        // Line breaks where messing up with the ADDRESS property. 
        //Just removing  all line breaks before using the strings
          line = line.replace(/(\r\n|\n|\r)/gm,"");
          lines[i] = line;
            var obj = {};
            var currentline = lines[i].split(",");
             for (var j = 0; j < headers.length; j++) {
          var header = headers[j];
          header = header.replace(/(\r\n|\n|\r)/gm,"");
          headers[j] = header;
          obj[headers[j]] = currentline[j];
        }
        result.push(obj);
    }
    var jsonText= JSON.stringify(result); // printing this to HTML page when the scope is local ?????

return result;
}
导出类ProductListComponent{
}
ngOnInit():void{
}
公共文件更改事件(事件:任意){
if(event.target.files&&event.target.files[0]){
const reader=new FileReader();
reader.onload=()=>{
让text=reader.result;
本章最后一节(正文);
返回JSON.stringify(text);
};
reader.readAsText(event.target.files[0]);
}
} 
公共财务数据分类(文本:任意){
变量行=text.split(“\n”);
重复变量=[];
var结果=[];
变量计数={};
var headers=行[0]。拆分(“”,“”);
对于(变量i=1;i
首先,我看到所有函数都在类组件之外。他们应该在里面。事实上,我不知道你怎么会没有编译错误

其次,Angular2中没有范围。您的意思是如何使组件的HTML/视图可以访问变量

可以通过如下方式声明变量来实现此目的:

export class ProductListComponent  {
private myJson: any;

public fileChangeEvent(event: any){
  if (event.target.files && event.target.files[0]) {
  const reader = new FileReader();
  reader.onload = () => {
    let text = reader.result;
    this.myJson = this.finalDataToBePassed(text); //this is where you give a value to your class variable 
    return JSON.stringify(text);
 };

 reader.readAsText(event.target.files[0]);

 }
} 

....
}
然后,随后转到view/html并使用插值(例如{{myJson}})或其他技术显示它

希望这有帮助