Fah*_*ari 11 multi-select typescript angular-ngselect angular angular6
我正在使用 angular6 multi-select,它有一个项目列表,这些项目来自 angular 服务的对象数组,ngOnInit就像这样传入multi-select:
this.sensorTypes = [
{ label : "Power", value : "P"},
{ label : "Current", value : "C"},
{ label : "Voltage", value : "V"}
]
Run Code Online (Sandbox Code Playgroud)
我想在multi-select表单加载时默认设置 2 个值。对于这个我结合ngModel上multi-select,并在该变量我在设定值ngOnInit这样的
this.selectedAttributes = [
{label : "Current", value : "C"},
{label : "Voltage", value : "V"}
]
Run Code Online (Sandbox Code Playgroud)
在我的 component.html 中,我是这样创建的multi-select:
<div class="form-group row">
<div class="col-sm-10">
<ng-select
[ngClass]="'ng-select'"
[(ngModel)]="selectedAttributes"
[ngModelOptions]="{standalone: true}"
[options]="sensorTypes"
[multiple]="true">
</ng-select>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
但默认情况下,多选中并未设置值。
您应该使用[items]输入绑定而不是[options]
<ng-select
[items]="sensorTypes"
bindLabel="label"
[multiple]="true"
placeholder="Select"
[(ngModel)]="selectedAttributes">
</ng-select>
Run Code Online (Sandbox Code Playgroud)
在组件的 module.ts 上,导入NgSelectModule. 如果你还没有导入你的FormsModule,你应该这样做,因为它需要被导入以进行 2 路绑定ngModel才能工作。
import { NgSelectModule } from '@ng-select/ng-select';
import { FormsModule } from '@angular/forms';
.
.
@NgModule({
imports: [
FormsModule,
NgSelectModule,
.
.
.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35270 次 |
| 最近记录: |