RxSwift可观察数组排序

时间:2016-04-23 06:17:03

标签: swift sorting observable rx-swift

我正在尝试对一个可观察的数组进行排序而没有运气(RxSwift n00b)

let items = [AnyObject]? 
let locations = Observable.just(items)

我希望在地点上实现这样的目标

items.sortInPlace({$0.name < $1.name})

任何指针都将受到赞赏!

3 个答案:

答案 0 :(得分:4)

这是我的解决方案

Observable
   .just(items)
   .map({ (items) -> [AnyObject] in
       return items.sorted(by: { (item1, item2) -> Bool in
          return item1.name < item2.name
       })
   })
   ....

答案 1 :(得分:1)

我想了

  1. Variable([AnyObject]())
  2. 的方式初始化地点
  3. 设置位置asObservable
  4. 排序为locations.value.sortInPlace({$0.name < $1.name})
  5. 感觉很好!

答案 2 :(得分:0)

(迅速4)这对我有用,其中数据源是一个变量数组

var datasource = Variable<[String]>.init([])

_ = self.datasource.value.sort(by: {$0.name < $1.name})

希望有帮助