如何在角度2和ngprime中设置下拉式多选的默认值

Muk*_*rma 3 javascript drop-down-menu primeng angular

我正在关注PrimeNg示例.这里是一个Plunker.如何在下拉列表中预先选择一些值.

  <p-multiSelect [options]="cities" [(ngModel)]="selectedCities"></p-multiSelect>
Run Code Online (Sandbox Code Playgroud)

Mih*_*nut 8

您只需要将一个值数组附加到selectedCities变量,以便将其绑定到模型.

在您的情况下,value属性object包含许多属性.

value:{id:1, name: 'New York', cityCode: 'NY'}
Run Code Online (Sandbox Code Playgroud)

解决方案是对map数组项进行获取所需的值.

举例来说,这将预选的拳头2 items下拉列表中的元素.

this.selectedCities = this.cities.slice(0,2).map(a => a.value));
Run Code Online (Sandbox Code Playgroud)

如果要从given数组中预选值,则应使用filter方法.

let arrayOfValues=['NY','IST'];
this.selectedCities = this.cities.filter(a => arrayOfValues.includes(a.value.cityCode)).map(a => a.value));
Run Code Online (Sandbox Code Playgroud)

完整的例子在这里.