iOS 中使用 MVVM,複雜的 Cell 的 ViewModel 該如何去寫?
怪我咯
怪我咯 2017-05-31 10:32:43
0
1
756

關於 iOS 中 MVVM 架構的一個問題

專案中 tableView 的 cell 比較複雜,於是我就把這個 cell 的展現形式拆分成: header cell footer 這樣來展示。
cell 裡面有多個 item 類似京東的購物車。

下面的圖片使用三種顏色來區分一個完成的 cell 所顯示的區域。

#我碰到的問題是: cell 的 viewModel 應該採用一下的哪一種方式去寫。

我嘗試了下面的兩種形式來寫

  1. ViewModel 包含 headerViewModelArray cellViewModelArray footerViewModelArray。

    
    这3个 viewModel 的数组分别表示对应一个 cell 中3个view 所用到的 ViewModel。

  2. #在 ViewModel 中把header cell footer需要展示的元素寫在一塊

##所以問題來了:
如果我使用1. 的方法來創建viewModel 就會造成取cell的內容不方便,因為cell 展示的是商品,商品可能有多個不太好一一對應。接著我使用2.的方式來建立 ViewModel,可是MVVM建議view-model的內容盡量壓縮到我們需要的範圍。當我對 footer 賦值的過程中,cell 對應的屬性其實是我不需要的,這樣就不太符合 MVVM 的建議。

我認為1.不太可靠,所以我使用了2.

我想請各位給我點關於這個介面使用 MVVM 的建議。

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回覆(1)
大家讲道理

沒必要這麼麻煩。

Cell 中的 VM 包含 1. foot 2. header 3. subCells
@property foot
@Property header
@property struct/class cell model

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板