0

私が取り組んでいるプロジェクトでは、Angular JS と Kendo UI ( Kendo Angular Directivesを使用) を使用しています。現在、外部キー フィールドを含む Kendo UI Grid にデータをロードしています。これをマッピングして、Guid ではなくユーザー フレンドリーなテキストを表示したいと思います。

だからから:

値の外国列
いくつかの値 [ガイド]

値の外国列
一部の値 外部値の名前

ajaxを使用して、マッピングで使用される外部キーの値をロードしたいと思います。グリッドの初期化時に値がすでにロードされている場合、これは問題なく機能します (以下の JSFiddle に例があります)。Kendo UI は ajax を使用してこれを自動的に行うことをサポートしていないため、グリッドを初期化する前に値をプリロードする必要があることを読みました。ただし、これを行っても、読み込まれた値に基づく変更がデータ ソースに反映されていても、グリッドは更新されません (Chrome の batarang 拡張機能で確認できます)。

リフレッシュをトリガーするために、次の呼び出しを行っています。

$scope.myGridOptions.dataSource.read();

JSFiddle とさまざまな試行に関するコメント: http://jsfiddle.net/ernestopye/64nwD/3/

これを機能させるために行ったさまざまな試みのいくつかについて、コメントを追加しました。私は何か間違ったことをしていますか?それとも、これは Kendo UI の Angular ディレクティブの問題でしょうか? 私はKendoとAngularの両方にかなり慣れていないので、おそらく前者だと思います。

助けてくれてありがとう。

4

1 に答える 1

1

Mihai Bazon は、GitHub の問題を通じて解決策を提供しました。この正確なシナリオを容易にするのに役立つ k-ng-delay と呼ばれる文書化されていない属性があります。彼はドキュメントへの追加に取り組んでおり、例を提供しています。

<div id="grid" kendo-grid k-ng-delay="gridOpts" k-options="gridOpts"></div>

JSFiddle の例をフォークし、k-ng-delay を使用するように更新しました: http://jsfiddle.net/ernestopye/ceKXg/2/

これが誰かを助けることを願っています!

于 2014-06-13T13:37:14.680 に答える