首页 > 解决方案 > Angular 5 - 为什么我的输入属性未定义?

问题描述

我是 Angular5 的新手,搜索了几个小时,但无法解决我的问题。SO上的每个相关线程都与我不在同一个版本中。

我有一个输入,当在该输入中输入某些内容时,我想在该输入上触发一个函数。

这是我的输入:

<input
   #autocompleteInput
   class="inputHeader"
   (click)="openSearch()"
   placeholder="Coupe homme, lissage brésilen, ..."
/>

这是我的输入属性声明:

@Input() autocompleteInput: string;

当我console.log(this.autocompleteInput);在 ngOnInit() 方法中时,它显示“未定义”。

我究竟做错了什么 ?

欢迎任何帮助。

标签: angular

解决方案


输入属性用于组件交互。在这里,如果您想获取您在输入中输入的值,那么您可以使用

在 html 中:

 <input
       #autocompleteInput
       class="inputHeader"
       (click)="openSearch()"
       placeholder="Coupe homme, lissage brésilen, ..."
       (input)="inputData($event.target.value)"
    />

在 ts 中:

inputData(data: any) {
 console.log(data)
}

推荐阅读