Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
268 views
in Technique[技术] by (71.8m points)

Angular 9 Typescript - How to pass the textbox entered value to a directive's input string

I need to pass the value entered in the textbox to another directive's input variable, without using ngModel. How to achieve this ? Below is the code.

HTML : 

<input type="text" placeholder='Type here' /> **The textbox to get the user's input value** 
<searchDirective [searchText]=''></searchDirective> **Need to pass the textbox's value to this [searchText] input variable**


*In searchDirective.component.ts :*

export class searchDirective implements OnInit {

@Input() searchText: string;

ngOnInit(): void {}

@HostListener('click', ['$event']) onClick($event) {
 **On this click event need to get the textbox's input value that the user entered** 
}

}
question from:https://stackoverflow.com/questions/65931032/angular-9-typescript-how-to-pass-the-textbox-entered-value-to-a-directives-in

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Try using this

Create a ref with #inputRef (any name you prefer) in the input and pass that value in searchDirective (both are in same HTML) inputRef.value as input has a value property

HTML :

<input type="text" placeholder='Type here'  #inputRef /> **The textbox to get the user's input value and #inputRef will help in accessing value in template** 
<searchDirective [searchText]='inputRef.value'></searchDirective>

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...