Swift 使用RxTableView、mvvm体系结构在tableView中显示空状态标签

Swift 使用RxTableView、mvvm体系结构在tableView中显示空状态标签,swift,mvvm,Swift,Mvvm,我正在学习rxswift,我有一个ViewController和tableView 我使用的是MVVM架构,因此tableView绑定到ViewModel上,它可以很好地显示数据 但是当我没有数据时,我想把TableView标签置为空状态 如果可能的话,我不知道怎么做 这是我目前的代码: func bindViewModel() { let inputs = viewModel.inputs let outputs = viewModel.outputs btnS

我正在学习rxswift,我有一个
ViewController
tableView

我使用的是MVVM架构,因此
tableView
绑定到
ViewModel
上,它可以很好地显示数据

但是当我没有数据时,我想把
TableView
标签置为空状态 如果可能的话,我不知道怎么做

这是我目前的代码:

func bindViewModel() {    
    let inputs = viewModel.inputs
    let outputs = viewModel.outputs
    btnSomeAction.rx.action = inputs.someAction
    outputs.usersList
        .bind(to: tableView.rx.items(cellIdentifier: "UserTableViewCell", cellType: UserTableViewCell.self)) { (_,element,cell) in
            cell.setData(name: element.name, avatar: element.avatar)
    }
    .disposed(by: disposeBag)
}
谢谢大家的帮助。
附言:

我知道如何在一个普通表格中,不使用元素量为零的
rx
。问题是关于
rxtable

最简单的解决方案是将可观察对象转换为驱动程序,然后返回空状态模型,如下所示:

   outputs.usersList
    .asDriver(onErrorJustReturn: [])
    .drive(to: tableView.rx.items(cellIdentifier: "UserTableViewCell", cellType: UserTableViewCell.self)) { (_,element,cell) in
        cell.setData(name: element.name, avatar: element.avatar)
}
.disposed(by: disposeBag)
据我所知,更复杂的解决方案是使用RxDataSources