typescript - 填充角度材料自动完成中的值不起作用
问题描述
我在表单中添加了角度材料自动完成选择。问题是下拉列表中没有填充值。
下面是我正在使用的代码片段。
- 我考虑过一个字符串数组,它有两个属性的对象。例如:Id 和 CityName
- 在角度材料自动完成中,我通过循环这个数组来绑定它们,但没有绑定任何值。
html标记
<div class="col-md-4">
<div class="form-group">
<label for="city">City</label>
<mat-form-field class="example-full-width d-block">
<input
type="text"
[matAutocomplete]="auto"
matInput
placeholder="Select city"
class="form-control border"
/>
<mat-autocomplete #auto="matAutocomplete">
<mat-option *ngFor="let option of options">
{{ option.name }}
</mat-option>
</mat-autocomplete>
</mat-form-field>
</div>
</div>
.ts 代码
export class CustomerEditComponent implements OnInit {
constructor() {}
options: CityMaster[];
selectedOption: string;
ngOnInit(): void {
this.options = [
{ id: 1, cityName: "Mumbai" },
{ id: 2, cityName: "Delhi" },
{ id: 3, cityName: "Banglore" },
{ id: 4, cityName: "Lucknow" }
];
}
}
我是否必须使用 Observable 来绑定值?
解决方案
options中的属性是cityName,html中绑定的是name。
<div class="col-md-4">
<div class="form-group">
<label for="city">City</label>
<mat-form-field class="example-full-width d-block">
<input type="text" [matAutocomplete]="auto" matInput placeholder="Select city" class="form-control border" />
<mat-autocomplete #auto="matAutocomplete">
<mat-option *ngFor="let option of options" [value]="option.id">
{{ option.cityName }}
</mat-option>
</mat-autocomplete>
</mat-form-field>
</div>
</div>
推荐阅读
- c# - 用于封装的 AutoMapper 和嵌套对象映射
- python - 如何将内存视图转换为字节?
- php - CakePHP 3:保存和检索嵌套的 BelongsToMany 关联
- git - mvn release 使用特定的私钥推送到 git
- r - R预测自动绘图或hchart
- java - 构建 JavaFX 应用程序
- javascript - 会话存储错误
- r - Tidyr 函数在循环内收集和粘贴
- android - 迁移到androidx后没有超级方法getLifecycle()
- ios - 为什么在 UITableView 中,cellForRowAtIndexPath 在 heightForRowAtIndexPath 之前被调用