1

NG-Tableライブラリを使用して、作成しているWebアプリケーションのユーザーにデータを表示しようとしていますが、組み込み関数がソートできないようですNG-Tableがネストされたデータ構造で動作しない

var data = [ 
{ 
generalInfo:{ 
    name: "Morty", 
    age: 20 
} 
}, 
    { 
generalInfo:{ 
    name: "Ricky", 
    age: 20 
}}]; 

私が使用している実際のデータベースでは、データをこのように構造化する必要があるため、構造を変更することはできません。このフォーマットと一致するようにHTMLを変更しようとしましたが、フィルタ要素はドット表記を許可しません。

私のHTMLは次のようになります。

<div ng-controller="appController as vm"> 
    <table ng-table="vm.tableParams" class="table table-bordered table- striped table-condensed" show-filter="true"> 
     <tr ng-repeat="user in $data"> 
      <td title="'Name'" filter="{ generalFeatures.name: 'text'}" sortable="'generalFeatures.name'">{{user.generalFeatures.name}}</td> 
      <td title="'Age'" filter="{ generalFeatures.age: 'number'}" sortable="'generalFeatures.age'"> {{user.generalFeatures.age}}</td> 
     </tr> 
    </table> 
</div> 

は私がこのように構造化されたデータをソートするための方法はありますか?

答えて

0

この問題を一時的に解決しました。ネストされたオブジェクトのすべてのプロパティをループして親に追加することで、親オブジェクトに新しいプロパティを作成できます。

angular.forEach(data, function (user) { 
    if(user.generalInfo != null){ 
     user.age = user.generalInfo.age; 
     user.name = user.generalInfo.name; 
    } 
}); 
関連する問題