控制台出错但在浏览器中显示

时间:2017-10-15 09:27:13

标签: angular angular-routing angular-forms http-parameters

我的角度应用程序中有一个问题,即ERROR TypeError:无法读取undefined的属性'name',但Projects.name正在显示。我怎样才能摆脱console.log中的错误。数据包含一个对象。

ngOnInit() {
    this.route.params 
      .subscribe((params: Params) => { 
      this.id = +params['id']; 
      this.projectsService = this.injector.get(ProjectsService);
      this.projectsService.getProject(this.id)
      .subscribe(
          (data:any) => {
            this.projects = data;
            console.log(data);

          },
          error => {
            alert("ERROR");
          })
      });  
}

2 个答案:

答案 0 :(得分:1)

好像你直接使用了projects.name,而{j}正在检索projects。此代码失败,因为它尝试projects.name绑定初始更改检测运行。

在这种情况下Use Safe Navigation / Elvis运算符

{{projects?.name}}

答案 1 :(得分:1)

您可以使用{{projects?.name}}或者您应该初始化项目...最佳做法是使用项目的界面和类。