2016-07-30 23 views
0

Ich versuche eine Spalte mit UI-Gitterelementen in ein Array zu kopieren und zu sortieren und das erste Element des Arrays zu vergleichen Mit den Daten der ersten Spalte werden die Spaltenspalten der Benutzeroberfläche überprüft.Winkelmesser - Kopiere die Spaltenelemente in ein Array, sortiere sie und vergleiche das erste Arrayelement mit den Daten der ersten Spalte

Dies ist mein Code -

ich den Fehler - unsorted.then keine Funktion ist. Kannst du mir bitte helfen. Lass mich auch wissen, ob ich irgendeine andere Methode verwenden kann.

danke im voraus.

var rows = element(by.id('grid2')).element(by.css('.ui-grid-render-container-body')).all(by.repeater('(rowRenderIndex, row) in rowContainer.renderedRows track by $index')); 
    var results = []; 
     var res = rows.count().then(function(cnt){     
      console.log('inside loop'); 
      console.log(cnt); 
      for(i=0; i < cnt; i++){ 
       ele = test.datacell('grid2',i,0); 
       ele.getText().then(function(txt){ 
       console.log(txt); 
       results.push(txt); 
       }); 
      } 
      var unsorted = results.map(function(element) { 
        console.log(element.getText()); 
        return element.getText(); 
        }); 

      var sorted = unsorted.then(function(texts) { 
       return texts.slice(0).sort(); 
       }); 

      ele = cmn.datacell('grid1',0,colcount); 
      expect(ele.getText()).toEqual(sorted[0]); 
+0

ich es jetzt arbeiten habe. kannst du mir bitte sagen, wie man in absteigender Reihenfolge sortiert. Vielen Dank. –

Antwort

1

für die Sortierung in absteigender Reihenfolge Sie versuchen, diese nutzen könnten -

var sorted = unsorted.then(function(texts) { 
    return texts.slice(0).sort(function (a,b) { 
      return b-a; 
    }); 
}); 
+0

danke. Ich fand rückwärts() ist die Funktion in absteigender Reihenfolge zu sortieren. –