我正在使用 Angular 4 和 prime ng 4.3.0 来显示对象;但是,当我选择一个项目时,整个列表都会选择,而不是一次只选择一行......我定义元素的方式有问题吗?
<p-listbox formControlName="userRole" [options]="this.userRoleItems" [(ngModel)]="selectedUserRoles" multiple="multiple" [style]='{"width":"650px"}' checkbox="checkbox" filter="filter"
>
<ng-template let-userRole let-i="index" pTemplate="item" optionLabel="userRole.description">
{{userRole.code}} <span style="float:right">{{userRole.description}}</span>
</ng-template>
</p-listbox>
export class UserRole {
public id: number;
public name: string;
public code: string
public description: string;
public branchId: number;
public branchName: string;
}
最佳答案
您应该在对象中使用value
属性。
组件中暂时没有 optionValue
属性。
示例代码:
import { Component, OnInit } from '@angular/core';
export class UserRole {
value: number;
rolename: string;
}
@Component({
selector: 'my-app',
templateUrl: 'app/app.template.html'
})
export class AppComponent implements OnInit {
userRoleItems: UserRole[] = [{value: 2, description: 'test'},
{value: 3, description: 'test'},
];
selectedUserRoles:any[] = [];
ngOnInit() {
}
}
关于angular - PrimeNG 列表框一次选择全部而不是一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47465150/