Das Sortieren funktioniert nach 'grunt build' nicht, ich gehe davon aus, dass es das js-minify ist, das es irgendwie kaputt macht. Wenn ich auf eine Kopfzeile klicke, passiert nichts. Seltsam aber, dass alles andere funktioniert. Jemand mit ähnlichen Problemen?
Hier ist mein Direktiven-Controller
controller: ['$scope', '$filter', 'ScoresAPI', 'ngTableParams', function($scope, $filter, ScoresAPI, ngTableParams)
{
ScoresAPI.getLeagueStandings($scope.leagueId)
.success(function(data)
{
$scope.tableParams = new ngTableParams({
page: 1,
count: data.length,
sorting: false
}, {
total: data.length,
counts: [],
getData: function($defer, params)
{
var orderedData = params.sorting() ? $filter('orderBy')(data, params.orderBy()) : data;
$defer.resolve(orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
}
});
});
}]
Ich stehe vor dem gleichen Problem.
In meinem Fall war es nicht das jsminify-Ziel. Aber war das HTMLmin-Ziel. Ich habe collapseBooleanAttributes
in false geändert und es hat das Problem für mich gelöst. Hier ist die gesamte Konfiguration des Ziels:
htmlmin: {
dist: {
options: {
collapseWhitespace: true,
collapseBooleanAttributes: false,
removeCommentsFromCDATA: true,
removeOptionalTags: true
},
files: [{
expand: true,
cwd: '<%= yeoman.dist %>',
src: ['*.html', 'views/{,*/}*.html', 'app_components/{,**/}*.html'],
dest: '<%= yeoman.dist %>'
}]
}
}
Super, das hat mein Problem auch gelöst. Vielen Dank!
Ich stand heute vor genau diesem Problem. Dies erwies sich als nützlich.
Ich bin jedoch nicht überzeugt, ob diese Lösung ausreicht, um das Problem als abgeschlossen zu betrachten. Alles andere funktioniert einwandfrei, ohne die Gruntfile.js zu bearbeiten. Warum ng-table nicht funktioniert, entzieht sich meiner Kenntnis.
bei mir hat der Fix auch funktioniert. Aber das sollte wirklich wieder geöffnet werden. Es sollte eine Erwähnung in der Readme geben über
bei mir hat der Fix auch funktioniert
Dies funktioniert bei mir nicht. Ich benutze Bower und habe beides mit der oben geposteten Version und mit dieser Änderung versucht:
src: ['_.html', 'views/{,_/}_.html', 'bower_components/{,__/}_.html'],
Dies ist die Liste der HTML-Dateien, die ich habe.
$ls -la bower_components/**/*.html
-rw-rw-r-- 1 andrei andrei 1585 iun 7 2013 bower_components/es5-shim/tests/index.html
-rw-rw-r-- 1 andrei andrei 1546 iun 7 2013 bower_components/es5-shim/tests/index.min.html
Wie soll dieser Fix funktionieren? Was ist die Ursache? Ich habe AngularJS-Version 1.2.15
Dankeschön!.
Hmmm... es scheint, dass $templateCache
in meiner Situation verwendet wird und deshalb das obige Muster "*.html" ignoriert wird
$templateCache.put('ng-table/header.html', '<tr> <th ng-repeat="column in $columns" ng-class="{ \'sortable\': parse(column.sortable), \'sort-asc\': params.sorting()[parse(column.sortable)]==\'asc\', \'sort-desc\': params.sorting()[parse(column.sortable)]==\'desc\' }" ng-click="sortBy(column, $event)" ng-show="column.show(this)" ng-init="template=column.headerTemplateURL(this)" class="header {{column.class}}"> <div ng-if="!template" ng-show="!template" ng-bind="parse(column.title)"></div> <div ng-if="template" ng-show="template"><div ng-include="template"></div></div> </th> </tr> <tr ng-show="show_filter" class="ng-table-filters"> <th ng-repeat="column in $columns" ng-show="column.show(this)" class="filter"> <div ng-repeat="(name, filter) in column.filter"> <div ng-if="column.filterTemplateURL" ng-show="column.filterTemplateURL"> <div ng-include="column.filterTemplateURL"></div> </div> <div ng-if="!column.filterTemplateURL" ng-show="!column.filterTemplateURL"> <div ng-include="\'ng-table/filters/\' + filter + \'.html\'"></div> </div> </div> </th> </tr>'),
Ich habe mein Problem gelöst. Ich habe 'sortable="'name'"" durch 'data-sortable="'name'"" ersetzt und es funktioniert. Schau dir das an:
http://bit.ly/1BgfqTu
Der Ansatz von
nochmal @esvit das sollte eigentlich in der readme stehen. Dies ist ein wichtiges Merkmal, das von einem standardmäßigen und recht häufigen Produktionsschritt abweicht
Der Ansatz von
Du bist mein Held, hätte ich diese Lösung nicht gefunden, hätte ich sicher den Rest meines Abends damit verbracht.
DANKE SCHÖN!!! Das hat mich wahnsinnig gemacht
Das Ändern von collapseBooleanAttributes
in der Gruntdatei auf false behebt dieses Problem immer noch - danke, dass du das gefunden hast.
+1 zur Problemumgehung von
Hatte dieses Problem heute.
Keine Änderung an der Grunt-Datei collapseBooleanAttributes: true
Das hat es sortiert: sortable
=> data-sortable
Ich löste dieses Problem , indem collapseBooleanAttributes:
auf false
in Gruntfile von htmlmin.dist.options
Ich musste eigentlich zwei Dinge tun... ändern Sie collapseBooleanAttributes:
in false
und ändern Sie auch den Code von <td data-title="'App score'" sortable="'gender'" >{{content.gender}}</td>
in <td sortable="'gender'" data-title="'App score'" >{{content.gender}}</td>
mit Datensortierung arbeiten hat bei mir nicht behoben...
@Jony-Y das ist seltsam. Sie mussten also die Reihenfolge ändern, in der Sie die ngTable-Attribute in den <td>
Elementen angegeben haben?
Super, das hat mein Problem auch gelöst. Vielen Dank!
Ich ändere collapseBooleanAttributes: true
in false
, die Sortierung kann funktionieren, Danke
Bei mir haben beide Lösungen funktioniert.
Ich hatte jedoch auch ein CSS-Problem (siehe die 2 Aufwärtspfeile in nicht sortierten Spalten):
Das Festlegen der folgenden Option hat das Problem behoben:
cssmin: {
options: {
advanced: false
}
},
@andreicristianpetcu +1 Bei mir hat es auch funktioniert!
freut mich, dass es geklappt hat :D
Das Ändern von CollapseBooleanAttributes hat mein Problem gelöst, thx
Die Verwendung von data-sortable hat bei mir funktioniert.
Wechseln Sie in die Grunt-Datei "collapBooleanAttributes: true", damit es in einer Sekunde wieder funktioniert.
Das hat mir überhaupt nicht geholfen: sortierbar => datensortierbar
thx für die tipps jungs...
htmlmin
Für mich gelöst.
Hilfreichster Kommentar
In meinem Fall war es nicht das jsminify-Ziel. Aber war das HTMLmin-Ziel. Ich habe
collapseBooleanAttributes
in false geändert und es hat das Problem für mich gelöst. Hier ist die gesamte Konfiguration des Ziels: