1

ノックアウト剣道でノックアウトバインディング構文を使用すると、データをグループ化する方法を定義できますか? 理想的には、ユーザーのグループ化を無効にし、バインディングを介してグループ化を実行したいと思います (または、これを行うにはバインディングを作成する必要がありますか?)

アップデート:

プロパティを kendo.data.DataSource として定義すると、これはうまくいくようです

var dataSource = new kendo.data.DataSource({
    data: response,
    // group by the "category" field
    group: { field: "category" }
});

私が知る限り、ノックアウト剣道ライブラリは、作成したデータソースに追加のオプション パラメータを供給するフックを提供しているようには見えません...したがって、「グループ」修飾子を提供する方法はありません単純化された、または options 構文を介して渡す非 kendo.data.DataSource。

4

1 に答える 1

3

a をデータとして直接使用したくない場合kendo.data.DataSource(ただし、この場合は使用する必要があると思います)、1 つの可能な (ある種のハッキーな) 解決策はwidget、バインディングでオプションを使用することです。

監視可能なプロパティを指定すると、widgetKO-Kendo は作成された Kendo ウィジェットでその値を設定します。

<div data-bind="kendoGrid: { data: items, widget: widget }"> </div>

次に、ウィジェットの変更イベントをサブスクライブし、データソースでグループ化を設定できます。

this.widget = ko.observable();

this.widget.subscribe(function (value) {
   value.dataSource.group({ field: 'category' });
});

JSFiddleのデモ。

于 2013-10-15T05:04:45.967 に答える