angular - 将输入集中在自定义 Angular MatFormFieldControl 中
问题描述
如何让我的父组件专注于页面加载时asset1
自定义的输入字段*?MatFormFieldControl
父组件 HTML:
<mat-form-field class="symbol">
<symbol-input
name="symbol"
placeholder="Symbol"
ngModel
#symbolInput="ngModel"
[(ngModel)]="symbol"></symbol-input>
</mat-form-field>
自定义MatFormFieldControl
HTML:
<div [formGroup]="parts">
<input class="asset1" formControlName="asset1" size="12">
<span class="input-spacer">⁄</span>
<input class="asset2" formControlName="asset2" size="12">
</div>
*我假设我将AfterViewInit
在父组件中实现并希望触发一个focus
会逐渐下降的事件?
解决方案
@IvanS95 为我指明了正确的方向。
ViewChild
在我的父组件中添加了一个:
@ViewChild(SymbolInputComponent) set focus(sic: SymbolInputComponent) {
sic.autofocus = true;
};
然后我在我的自定义中添加了一个设置为 falseMatFormFieldControl
的公共变量。autofocus
如果我需要在给定页面上多次使用此字段。
然后我添加autofocus
到我的MatFormFieldControl
模板中:
<div [formGroup]="parts">
<input class="asset1" formControlName="asset1" size="12" [autofocus]="autofocus">
<span class="input-spacer">⁄</span>
<input class="asset2" formControlName="asset2" size="12">
</div>
推荐阅读
- python - 如何比较句子与关键字位置的想法?
- bash - 使用 IGNORECASE 时 awk 保留标题
- c# - 如何从 DotNetCore 2.2 中的 appsettings.json 读取连接字符串?
- python - 一个测试用例显示超出时间限制。为什么?
- create-react-app - 默认颜色不适用于`tailwind.macro`
- c - 如何在 aes 中存储对称密钥
- c# - 使用 Intersect 比较 2 个列表,但在第 3 个列表中应包含列表 2 中的匹配 AND 属性
- javascript - 使用 chart.js 堆叠两个 y 轴
- java - 出现错误:尝试在静态方法中构造类时,无法从静态上下文中引用非静态变量 this
- mysql - sql更新where子查询