javascript - 为 Angular 模板元素引用赋值的目的是什么?

标签 javascript angular typescript angular-material

我注意到一些开发人员为他们的元素引用分配了一个值,如下所示:

#searchInput="matInput"

这具有关闭字段自动完成功能的效果。这就是它完成的原因吗?

这是一个更完整的示例:

<mat-form-field floatLabel="never">
  <input matInput #searchInput="matInput" type="text" placeholder="Search"/>
</mat-form-field>

This article has more context 。它仅以声明方式使用#searchInput。它无需为 #searchInput 赋值即可工作,这让我很好奇为什么人们要为其赋值。

最佳答案

不,这完全无关。

此语法用于获取 Angular 组件作为当前组件的 View 子组件。

在源代码中,它在 @Component 装饰器中定义为 exportAs

(See it on their repo)

它允许组件将变量声明为 Material 输入,并以编程方式控制它。

要关闭自动完成功能,这是完全不同的。因为我不确定您是否要求有人解释语法,所以我会停下来等待您评论我的答案,以防万一您需要它!

关于javascript - 为 Angular 模板元素引用赋值的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58270027/

相关文章:

javascript - 简单和基本的 Node WebSocket 客户端和服务器示例

javascript - 使用 Node js 抓取 <ul> 中的所有列表 <li> 项

Angular2 变化检测 : ngOnChanges not firing for nested object

javascript - 首次对返回 Observable 的方法进行 Angular Testing

typescript - CollectionReference.doc() 要求它的第一个参数是非空字符串类型

php - 如何让用户在FCK编辑器中添加对象标签?

javascript - Angular 2 RC5 及更高版本 - 当没有路由匹配时如何显示错误页面?

javascript - 自定义模块的相对与非相对模块导入

javascript - 如何捕获异步非 promise 错误? (对特定错误使用react)

javascript - 有没有办法确定一个函数是否在文档就绪中运行?