什么是 [clearable] 在 ng-select 中的替代方案?

3

我不想为防止空间泄漏而使用ng-select中的[clearable]。相反,我只想使用[clearOnBackspace],但是当我写下[clearable] = "false"[clearOnBackspace] = "true"时,它不起作用。

enter code here

    <ng-select [items]="cities"
               bindLabel="name"
               placeholder="Select city"
               [(ngModel)]="selectedCity"
               [clearable]="false"
               [clearOnBackspace] = "true"
               [excludeGroupsFromDefaultSelection] = "true">
    </ng-select>

如果“clearable”属性设置为false,并且“clearOnBackspace”设置为true,则用户可以使用退格键删除单个项目。if (this.filterValue || (!multiple && !this.clearable) || !this.clearOnBackspace || !this.hasValue) {模板示例:<ng-select> (add)=... (remove)=... [multiple]="true" [clearable]="false" [clearOnBackspace]="true" </ng-select> 您可以通过CSS轻松隐藏清除按钮。 - Mebin Joe
如果使用[clearable]="true",则只有在按下退格键时才会清除它。 - Just code
用户只能选择一个值,因此不需要[multiple] =“true”。是的,我可以使用CSS删除交叉按钮,但我想通过JavaScript来处理它。 - Sabbir
@Just Code 如果我设置 [clearable]="true",它也会显示交叉图标。但是我的空间不允许这样做。 - Sabbir
1个回答

2
如果你设置[clearable]="false",将禁止清除选择。
你可以使用CSS来隐藏关闭图标,像这样:
.ng-clear-wrapper{
  display: none;
}

并且保持ng-select不变

演示

<ng-select [items]="cities"
               bindLabel="name"
               placeholder="Select city"
               [(ngModel)]="selectedCity"
               [clearable]="true"
               [clearOnBackspace] = "true"
               [excludeGroupsFromDefaultSelection] = "true">

实际上,您不需要使用[clearOnBackspace] = "true"

最初的回答


@Sabbir 为什么不用CSS呢? - Just code

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接