gpt4 book ai didi

从 parent 到 child 的 Angular 传递数据是未定义的

转载 作者:搜寻专家 更新时间:2023-10-30 21:27:28 26 4
gpt4 key购买 nike

我正在尝试使用组件交互将数据从父级传递给子级

在父组件中:

<app-news [leonardType]="countTitle"></app-news>

子组件

export class NewsComponent implements OnInit, AfterViewChecked {

@Input() leonardType: string;
title;
constructor(
public newsService: NewsService
) {}
ngAfterViewChecked() {
console.log(this.leonardType); ==> undefined
console.log(this.newsService.leonardCategory[this.leonardType]); ==> undefined
}

ngOnInit() {
this.title = this.newsService.leonardCategory[this.leonardType];
console.log(this.leonardType); ==> undefined
console.log(this.newsService.leonardCategory[this.leonardType]); ==> undefined
}

在子组件服务中我有一个对象:

leonardCategory = {
countTitle: "TITLE 1",
indTitle: "TITLE 2"
};

我认为该 View 尚未呈现,但在 ngAfterViewChecked 中我得到 leonardType 的未定义输出

最佳答案

如果要传递countTitle 文本,只需将其包装到'' 中即可。如果没有 '',它会被视为组件中的一个属性,它是 undefined,所以为什么您在子组件中得到 undefined

<app-news [leonardType]="'countTitle'"></app-news>

或者只是没有[]

<app-news leonardType="countTitle"></app-news>

关于从 parent 到 child 的 Angular 传递数据是未定义的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51609873/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com