Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.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
Javascript 在angular 4中呈现函数后,将数据从服务共享到组件_Javascript_Angular - Fatal编程技术网

Javascript 在angular 4中呈现函数后,将数据从服务共享到组件

Javascript 在angular 4中呈现函数后,将数据从服务共享到组件,javascript,angular,Javascript,Angular,我有一个服务,在服务中,我有一个“cohortabsresult”方法,它设置了charts数组。我想在“chart.component”中使用此arry 将CohortService导入组件,将其添加到@component中的提供程序中,现在您可以访问服务中的变量:D import { CohortService } from '../../cohort.services'; // whatever the path is.. @Component({ selector: '', t

我有一个服务,在服务中,我有一个“cohortabsresult”方法,它设置了charts数组。我想在“chart.component”中使用此arry


将CohortService导入组件,将其添加到@component中的提供程序中,现在您可以访问服务中的变量:D

import { CohortService } from '../../cohort.services'; // whatever the path is.. 
@Component({
  selector: '',
  templateUrl: '',
  styleUrls: [''],
  providers: [CohortService]
})
export class ChartCohortComponent implements OnInit{
  charts: any;
  constructor(private cohortService: CohortService, private route: 
  Router, public activatedRoute: ActivatedRoute) {
       this.charts = this.cohortService.charts;
  }


  ngOnInit(){ 

    console.log("ch", this.charts)

  }
 }

在什么时候运行
coorttabsresult
函数来填充
图表
数组?这不在代码中。它将不起作用,因为将其放入组件的提供程序数组将生成服务的新实例,因此不会设置charts值。他可以在组件构造函数中注入服务。@geoautome:您可以在app.module.ts中注入服务。是的,在他的示例中,情况显然是这样的,因为他已经在另一个组件构造函数中使用了服务。因此,在组件中重新提供它将不起作用,并导致创建一个新实例。所以他只需要在他的组件中使用它。
export class ChartCohortComponent implements OnInit{
  charts: any;
  constructor(private cohortService: CohortService, private route: 
  Router, public activatedRoute: ActivatedRoute) {
       this.charts = this.cohortService.charts;
  }


  ngOnInit(){ 

    console.log("ch", this.charts)

  }
 }
import { CohortService } from '../../cohort.services'; // whatever the path is.. 
@Component({
  selector: '',
  templateUrl: '',
  styleUrls: [''],
  providers: [CohortService]
})
export class ChartCohortComponent implements OnInit{
  charts: any;
  constructor(private cohortService: CohortService, private route: 
  Router, public activatedRoute: ActivatedRoute) {
       this.charts = this.cohortService.charts;
  }


  ngOnInit(){ 

    console.log("ch", this.charts)

  }
 }