2016-07-30 50 views
0

我试图将一列UI网格元素复制到一个数组并对它进行排序并比较数组的第一个元素用第一列数据检查UI网格列数据是否正确排序。量角器 - 将列元素复制到数组中,对它进行排序并将第一个数组元素与第一列数据进行比较

这是我的代码 -

我得到的错误 - unsorted.then不是一个函数。你能帮我么。也让我知道如果我可以使用任何其他方法。

在此先感谢。

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

我现在的工作。你能否让我知道如何按降序排列。谢谢。 –

回答

1

降序排列,你可以尝试使用这个排序 -

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

谢谢。我发现reverse()是按降序排序的函数。 –

相关问题