首页 > 解决方案 > 将数组存储到全局变量 angular

问题描述

我正在尝试将valueof parse保存array到 globalarray中。但全球array向我展示undefined

  dataUrl: string = "assets/data.csv";
  private data:[];
dataInit(){
    this.papa.parse(this.dataUrl, {
      download: true,
      complete: (result) => {
        // result.data.push(this.data);
        this.data = result.data
        // console.log(result.data, "inside parser");
        // console.log(this.data, "global array");
      }

    });
  }
  ngOnInit() {
    this.dataInit();
    console.log(this.data, "inside onInit");
}

安慰

undefined "inside onInit"

标签: arraysangularglobal-variables

解决方案


数据将在内部可用complete callback。所以console.log(this.data)在那边。

原因:complete是一个异步工作的回调方法。

dataUrl: string = "assets/data.csv";
data = [];
dataInit(){
    this.papa.parse(this.dataUrl, {
      download: true,
      complete: (result) => {
        // result.data.push(this.data);
        this.data = result.data            
        console.log(this.data);
      }

    });
  }
  ngOnInit() {
    this.dataInit();
}

推荐阅读