2016-10-05 2 views
2

J'ai un ng table assez vanille que j'ai fourni les paramètres Suivis pour:Désactiver ngTable tri

$scope.newRoomsTableParams = new NgTableParams(
    { 
    sorting: {} 
    }, 
    { 
    total: 0, 
    getData: getNewRoomsData, 
    counts: [] 
    } 
); 

Je veux désactiver la fonction de tri de la table ng-entièrement pour toutes les colonnes du tableau. Plus précisément, je souhaite que les en-têtes de colonne ne soient pas cliquables et ne possèdent pas les flèches haut/bas.

Est-ce possible? Éditer # 1: Je suppose que la question revient vraiment à interpréter le ng-table documentation que je ne suis pas capable de comprendre en ce moment.

Edit # 2: fonction getNewRoomsData est vide

function getNewRoomsData() { 
    return $scope.newRoomsData; 
} 
+0

pour désactiver le tri pour une colonne, définissez la propriété 'Sortable' pour la colonne à' false'. – Claies

+0

vous devriez être en mesure de revoir le code de la documentation à http://ng-table.com/#/sorting/demo-enabling pour comprendre comment l'appliquer à votre ensemble de données. – Claies

+0

@Claies voulez-vous dire dans un tableau ou un hachage? Pourriez-vous m'aider avec un exemple? – ztech

Répondre

2

Dans la vue (code html) supprimer les filter et sortable params de tag <td>.

Exemple, changer ceci:

<table ng-table="vm.tableParams" class="table" show-filter="true"> 
    <tr ng-repeat="user in $data"> 

    <td title="'Name'" filter="{ name: 'text'}" sortable="'name'"> 
     {{user.name}} 
    </td> 

    <td title="'Age'" filter="{ age: 'number'}" sortable="'age'"> 
     {{user.age}} 
    </td> 

    </tr> 
</table> 

à ceci:

<table ng-table="vm.tableParams" class="table" show-filter="true"> 
    <tr ng-repeat="user in $data"> 

    <!-- [email protected]@k here below! --> 

    <td title="'Name'"> 
     {{user.name}} 
    </td> 

    <td title="'Age'"> 
     {{user.age}} 
    </td> 

    </tr> 
</table>**