html - 绑定 Ngmodel 时,值未显示在 Angular 选择框中
问题描述
我是 Angular 的初学者,当我尝试通过在选择框中循环显示对象时,它没有显示任何值。仅显示空白下拉列表。
我的html页面如下:
<div *ngIf="userPermissionObj">
<select id="permission">
<option *ngFor="let obj of permissionType"
[value]='permissionType.value'
[selected]="userPermissionObj.sPermissionType == obj.value ? true : null">
{{permissionType.viewValue}}
</option>
</select>
</div>
我的组件 ts 文件包含如下代码,
getUserPermisionsByUsernameSearch()
{
var param:string=this.permissionRequestUser;
this.manageuserService.getUserPermissionApiMethod(param)
.subscribe((data:any)=> {this.userPermissionObj=data;});
}
permissionType = [
{value: 'R', viewValue: 'Read'},
{value: 'W', viewValue: 'Write'}
];
我在哪里错误地实现了我的 html 页面?
解决方案
您应该替换[value]='permissionType.value'
by[value]='obj.value'
和{{permissionType.viewValue}}
by{{obj.viewValue}}
因为 permissionType 是您循环使用的数组。所以你的 HTML 应该是这样的
<div *ngIf="userPermissionObj">
<select id="permission">
<option *ngFor="let obj of permissionType"
[value]='obj.value'
[selected]="userPermissionObj.sPermissionType == obj.value ? true : null">
{{obj.viewValue}}
</option>
</select>
</div>
推荐阅读
- dataweave - 如何在dataweave中减去两个数组
- java - ComponentScan 是否在我的 SpringMVC 项目中工作?
- vba - 在表中添加新记录时如何检查时间范围?
- python - 如何在 matplotlib 金融中保存烛台图
- python - VSCode 调试模式不会将 os.getcwd() 设置为 launch.json 中指定的那个
- partition - Gephi 0.9.2 中的“组”按钮在哪里?
- git - 构建从 docker 容器到 bitbucket 私有存储库的 SSH 通信设置
- php - 带有 OR 条件 JQuery 的 Onclick 委托
- javascript - 如何在 react.js 中的获取类型 Api 中传递正文中的数据?
- google-cloud-platform - 关于 Google Oauth 应用验证的问题