幾乎每一個項目都是須要作管理後臺,對於後端開發人員來講,管理後臺一般須要本身搞定,而無法獲得前端人員的支持。前端
因此如何簡單又健壯的支持某些功能,是咱們追求的目標。後端
舉用戶改查的例子:框架
一、一般咱們先有一個用戶列表,帶分頁等;接口
二、而後咱們須要提供對單個用戶的各類操做,譬如:加金幣、解綁手機號、禁用等後端開發
譬如,加金幣,一般是這樣的:開發
一、拉取列表中的用戶金幣用於顯示;後臺
二、調用加金幣接口。遍歷
三、若是調用成功,則獲取接口返回的金幣數或者根據列表中的金幣數量增長後的金幣數,更新到列表中。分頁
這個流程看下來沒什麼問題,但倒是比較耦合的,由於:方法
若是本身經過原數據計算,則服務端和前端各有一個加金幣的代碼,並且有可能產生不一致;
若是是獲取後端給出的金幣數量,則後端的這個接口就比較複雜,包含修改數據和獲取數據;
並且還有一個問題就是操做的類型一般比較多種類型,有些甚至並不是操做用戶表、有些操做數據比較多、有些操做邏輯很複雜。
以上就是咱們遇到的問題,如下爲咱們簡化的方式:
首先,咱們須要實現一個獲取單條數據的接口,數據格式須要保持和列表的格式一致(儘可能列表接口和單條接口複用代碼)
而後,咱們須要在前端增長一個方法,經過惟一標識(id)拉取單條信息的數據,並遍歷列表中的數據,把列表中id等於傳入id的條目的數據總體替換。
最後,咱們在把每一個用戶操做成功後,直接調用上一步驟提供的方法(這裏咱們使用的MVVM框架,因此,因此變動都即便生效,若是不是,請儘可能保持列表的生成和單條數據的變動代碼統一)。
這樣,咱們就達成了每次操做都很簡單,操做接口也很乾淨。並且不容易出錯 的效果。