是否有可能以某种方式改变下拉列表的过滤行为?有必要使当输入搜索字符串时,过滤从第二个元素开始,即 第一个元素 ( { name: "STATIC", code: null }) 必须始终出现在下拉列表中,即使未找到输入的值。
标记:
<p-dropdown [options]="cities" [filter]="true" [(ngModel)]="selectedCity1" placeholder="Select a City"
optionLabel="name" [showClear]="true"></p-dropdown>
零件:
@Component({
selector: "app-root",
templateUrl: "./app.component.html",
styleUrls: ["./app.component.scss"]
})
export class AppComponent {
cities: City[];
constructor() {
this.cities = [
{ name: "STATIC", code: null },
{ name: "New York", code: "NY" },
{ name: "Rome", code: "RM" },
{ name: "London", code: "LDN" },
{ name: "Istanbul", code: "IST" },
{ name: "Paris", code: "PRS" }
];
}
}


我检查了所有 p-dropdown 文档,没有发现任何类似的东西。但是这个问题可以用这种不好的方式解决。您需要替换组件中的过滤逻辑,如示例所示。
https://stackblitz.com/edit/primeng-dropdown-demo-yrjncg?file=src/app/app.component.ts