您好,登錄后才能下訂單哦!
前端需要展示一個列表如首頁的輪播圖后臺需要能夠控制列表數據的排序。
自動規則 + 運營干預干預包括降低排名提升排名設定位置和新增item
在Web后臺管理系統中列表形式的數據排序功能是很常見的需求。要實現這類功能給數據表增加一個排序字段order
越大排名越靠前數字相同時按照自動規則如id排序這樣就可以實現了
id | name | order |
---|---|---|
1 | tom | 2 |
2 | jack | 3 |
3 | bob | 1 |
實際的排序顯示為
jack
tom
bob
既然是后臺那么主要的用戶是公司的運營人員本著提高使用效率的原則在草稿紙上畫了個原型讓運營對比然后來得出哪個更符合他的使用習慣再做確定結果溝通下來運營理想中操作是想要在后臺直接拖動排序。
現在問題來了應該怎么設計這個運營干預的功能
方案1的技術實現最簡單對開發來說最方便但對運營來說卻比較麻煩。
方案2的技術實現其實較復雜比如上移一位需要先查詢當前項的前一項的order
, 然后讓當前項的order+1
并保存, 對運營來說操作較簡單。
方案3的技術實現比較簡單比如點擊-10只需更新當前項的order-10
并保存但有可能在order-10
后當前項的順序還沒有變如前一項12當前項11后一項0對運營來說操作比較簡單。
方案4的技術實現比較復雜需要使用js實現拖拽數據項的效果等在拖動結束或點擊保存后判斷當前的所有數據順序并保存對運營來說操作簡單。
綜合比較
技術實現復雜度方案1<方案3<方案2<方案4
操作便捷性方案4<方案3<方案2<方案1
分析一下大多數的場景看到列表的數據是有限的一般都是5條、10條、20條左右由于我所在的是創業公司開發資源有限選擇方案3在當前情況下是合適的實現方式。
經過了一番溝通在許諾了下午茶后說服了產品、運營接收這中方案。
圖中就是我用方案3實現的一個界面單個箭頭的是+1 -1
倆個箭頭的分別是+10 -10
分別用于微調和較大位置距離的調整在管理大多數少量數據列表的場景下對于運營人員是夠用了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。