私のアプリでは、ng2-smart-tableのドロップダウンリストに動的な値をロードしています。 ng2-smart-tableのドロップダウンで複数選択を有効にする必要があります。
注:ドロップダウンでの複数選択はチェックボックスではありません。
独自のカスタムエディターコンポーネントで試すことができると思います。基本的なselect
と複数のattribute
を追加しましたが、必要に応じて、より複雑なカスタムコンポーネントを作成できます。
valuePrepareFunction
とvoilaを使用してコンポーネントにデータを渡します。
settings.ts
private settings = {
// Previous config ...
columns: {
multiple: {
title: 'Multi select',
type: 'html',
editor: {
type: 'custom',
valuePrepareFunction: (cell, row) => row,
component: MultiSelComponent,
},
}
}
}
multiSel.component.html
<select multiple [(ngModel)]="yourModelStore">
<option *ngFor="let item of myValues" [value]="item.value">{{item.name}}</option>
</select>
multiSel.component.ts
import { Component, Input, OnInit } from '@angular/core';
import { ViewCell } from 'ng2-smart-table';
....
export class MultiSelComponent implements OnInit {
@Input() value;
yourModelStore: any; // rendered as this.yourModelStore = ['value', 'value'];
ngOnInit() {
this.myValues = this.value;
}
module.ts
declarations:[
//others ...
MultiSelComponent
]
entryComponents: [
MultiSelComponent
]
**私は答えを編集し、設定とcomponent.tsに関するより多くの情報を追加しました