ボタンをクリックしてグリッドのデータを取得しようとしています。私は唯一の2回目のクリックの後に、ボタンのクリックでデータを取得Aurelia-Kendoグリッド - ボタンクリックでデータを取得する方法
<ak-grid k-data-source.bind="datasource" view-model.ref="gridVM">
<ak-col k-title="Public Id" k-field="publicId"></ak-col>
<ak-col k-title="Payment Type" k-field="paymentType"></ak-col>
<ak-col k-title="Initiated" k-field="initiated"></ak-col>
<ak-col k-title="Completed" k-field="completed"></ak-col>
<ak-col k-title="Result" k-field="result"></ak-col>
<ak-col k-title="State" k-field="state"></ak-col>
<ak-col k-title="Total" k-field="total"></ak-col>
<ak-col k-title="User Reference" k-field="userReference"></ak-col>
</ak-grid>
<br />
<button ak-button="k-icon: ungroup; k-widget.bind: button" k-on-click.delegate="GetTransaction()">Get Transactions</button>
これは、ファイルのviewmodel(TS)である
export class Test{
gridVM;
datasource;
GetTransaction() {
this.datasource = new kendo.data.DataSource({
type: "json",
transport: {
read: {
type: "POST",
contentType: "application/json; charset=utf-8",
url: "api/getTransaction"
},
parameterMap(data, operation) {
if (data.models) {
return JSON.stringify({ products: data.models });
} else if (operation === "read") {
return JSON.stringify(data);
}
}
},
schema: {
data: "data",
total: "total",
aggregates: "aggregates"
},
pageSize: 5
})
this.gridVM.recreate();
}
}
: は、これは私のグリッドとボタンです。それは私には、私は前の要求からデータを取得するようだ。 pazeSizeを変更した場合、2回目のクリック後にのみ別のレコード数が表示されます。
自分のネットワーク(デバッグ用)を確認しましたが、最初のクリック後にはgetTransactionが表示されていません。
最初のボタンをクリックした後に修正して正しいデータを取得する方法を教えてください。
ありがとうございます。
この場合、ページ読み込み直後にグリッドにデータが表示されますが、ボタンをクリックした後は**表示されます。 –
グリッドラッパーにk-auto-bind.bind = "false"を設定してみてください。 参照:http://docs.telerik.com/kendo-ui/api/javascript/ui/grid#configuration-autoBind –
申し訳ありません、多分、おそらくそれは私の間違いでした。私は完全な仕事については説明しませんでした。このボタンは、一度だけ使用する必要はありません。私は、データ要求のためのフィルタを使用し、したがって、私は複数のボタンをクリックする可能性を持っている必要があります。コンストラクタの場合、すべてのフィルタリングフィールドに対して空の値が返されます。私はまた、読んでフェッチを変更しました - はい、私は後続のボタンクリック(私はネットワークで要求を見ることができます)に反応を見るが、フィールドをフィルタリングの値 - 空です。 –