首页 > 解决方案 > 如何在 Angular 中标记/突出显示输入?

问题描述

我正在使用 matInput。我想要的是 matInput 中的内容被标记/突出显示,这样如果我按下任何键,文本就会被删除。例如,您在 stackoverflow 的搜索栏中双击一个单词。我怎样才能存档呢?

<mat-form-field>
  <input matInput [(value)]="test">
</mat-form-field>

标签: angular-material

解决方案


假设您使用的是 Angular 8,您可以使用@ViewChild装饰器来获取对您input元素的引用。ngAfterViewInit然后在生命周期挂钩中选择输入值。为了将input元素与链接@ViewChild,您可以使用模板引用变量(例如#food)。

请看下面的StackBlitz

请注意,使用setTimeoutinsidengAfterViewInit会阻止您获得ExpressionChangedAfterItHasBeenCheckedError.


推荐阅读