我有两个屏幕。 1.列出食物清单 2.购物车列表
所以在食物清单中,我有购物车按钮.因此,在单击购物车按钮时,食物的名称应显示在购物车列表中。
我已经在 mvvm 中做过了。
所以在食物列表视图控制器中:-
cell.cartaddCell = {[weak self] in
if let i = self?.tableView.indexPath(for: $0) {
let cartmodel:CartModel = CartModel(withoffermodel:self!.offerViewModel.datafordisplay(atindex: indexPath))
let cartDataSource:ChartDataSourceModel = ChartDataSourceModel(array: nil)
let cartViewModel:ChartViewModel = ChartViewModel(withdatasource: cartDataSource)
cartViewModel.insertedArray = cartmodel
print(cartViewModel.insertedArray)
cartViewModel.add()
let cartViewController:ChartViewController = ChartViewController(nibName: "ChartViewController", bundle: nil, withViewModel: cartViewModel)
self?.navigationController?.pushViewController(cartViewController, animated: true)
// self?.present(cartViewController, animated: true, completion: nil)
// print(cartViewModel.insertedArray )
print(cartmodel.offerdetailAddName)
print(cartmodel)
print(i)
// self?.chartViewModel.delete(atIndex: i)
}
}
在购物车视图中模型:
func add() {
datasourceModel.dataListArray?.append(insertedArray!)
print(datasourceModel.dataListArray)
print(insertedArray?.offerdetailAddName)
}
因此,名称将显示在购物车列表中。
但是当我们直接单击事件列表时,添加的名称不会显示在此屏幕中。
那么如何在此屏幕中插入行。
您需要在UITableView 上重新加载数据。
也许从模型到 UIViewController 的委托将是一个很好的机制。