首页 > 解决方案 > Angular - @Input 总是选择 undefined

问题描述

我有应用程序组件(我的菜单和按钮在哪里),我有我的主组件(我想根据是否显示菜单更改某些内容)。

我有一个布尔值,它基本上是菜单的状态,因为它显示为真,如果它隐藏则为假。

我在控制台中看到的内容:

当我尝试使用@Input 读取值时,首先它返回真或假(应该如此),然后立即将值更改为未定义。我用 ngDoCheck 命令试过这个。

这是我的代码:

home.component.ts

 @Input() state: any; // tried boolean too, but kept any just in case

  ngDoCheck(): void {
    console.log(this.state)
  }

app.component.html

<div class="icon">
  <img
    [@arrow]="menuState"
    (click)="menuToggle()"
    class="icon-img"
    src="../../assets/icons/arrow.svg"
    alt=""
  />
</div>
</div>
<app-home [state]="isMenuShown" [message]="message"></app-home>

另外,我试图传递随机消息,只是为了看看这是关于布尔值的,同样的情况......

标签: javascriptangulartypescript

解决方案


推荐阅读