AngularJS 用のSmart Tableを使用していますが、Smart Table のグローバル検索は、非同期にロードされたデータでは機能しません。この小さなplkrを作成して、実際の問題を確認しました。
詳細:
ドキュメントに従って、データのコピーが 2 つあり、1 つはレンダリング用で、もう 1 つはデータの「静的な」安全なコピーです。API 経由で読み込まれたデータを表示するテーブルがあります。ここに、HTML にテーブル宣言があります。
<table st-table="stc.displayedCollection" st-safe-src="stc.rowList" class="table table-striped">
ご覧のとおり、スマート テーブルに「誰」が私のデータの 2 つのコピーであるかを伝えています。
ここに、データをフェッチするためのコントローラーがあります。
stc.fetchData = function(val) {
console.log(val);
$http.get('data'+val+'.json').success(function(data){
stc.rowList = data;
stc.displayedCollection = [].concat(stc.rowList);
});
};
データが読み込まれると、スマート テーブルが正常に機能しません (たとえば、フィルターと並べ替えが機能しません)。
問題はどこだ?