2013-05-14 45 views
6

我有以下代碼:骨幹排序方法

Campaign.Collection = Backbone.Collection.extend({initialize: function() { 
}, 
comparator: function(item) { return item.get('Name'); } 
} 

我打電話collection.sort(),似乎工作,並就排序名稱字段的問題是,更高的優先級爲大寫字母例如模型(「一些測試'<'更多測試')是否有一種方法來覆蓋行爲?

回答

11

最簡單的解決方法是簡單地做到以下幾點:

Campaign.Collection = Backbone.Collection.extend({ 
    initialize: function() {}, 
    comparator: function(item) { return item.get('Name').toLowerCase(); } 
}; 

這都將轉換爲小寫比較之前所以它會以忽略情況的方式進行比較。

6

對於區分大小寫的比較,使用本機JS功能toLowerCase

Campaign.Collection = Backbone.Collection.extend({initialize: function() { 
}, 
comparator: function(item) { return item.get('Name').toLowerCase(); } 
} 
+0

太好了,謝謝! – streetlight 2013-10-14 17:08:02