Dashboard.component.ts他のコンポーネントが変数にアクセスできるようにするにはどうすればよいですか?
import { Component, OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { AuthService } from '../auth/auth.service';
import { User } from '../auth/user.model'
@Component ({
selector: "app-dashboard",
templateUrl: "./dashboard.component.html",
styleUrls: ['./dashboard.component.css']
})
export class DashboardComponent implements OnInit {
user: User;
constructor (private authService: AuthService, private router: Router) {}
ngOnInit() {
this.authService.getUser()
.subscribe(
(user: User) => {
this.user = user;
}
)
}
onLogout() {
this.authService.logout();
this.router.navigate(['/login'])
}
}
上記成分は、基本的には、NAV成分であり、Iは、このコンポーネントの内部に他の構成要素の多くを有します。私はこのコンポーネントの内部のコンポーネントのユーザー変数にアクセスする方法を知りましたか?
編集:私は質問を言い換える必要があります。私が上記の質問をした理由は、これのためです:
私は{{user.name}}のような親コンポーネントにユーザープロパティを表示します。しかし、私はそれを使用していないにもかかわらず、エラーを生成し、この親のための子供の部品、
"ERROR TypeError: Cannot read property 'name' of undefined"
は私が
https://angular.io/docs/ts/latest/cookbook/component-communication.htmlのいずれか –
「ユーザー変数」とは、「プロパティ」を意味しますか?一般的に、子コンポーネントのプロパティにアクセスすることは悪い習慣であり、プログラム設計の悪さを反映しています。 –
''です。あなたの子供の '@Input()user;' –