基於vue開發的後台管理系統,怎麼封裝一個下拉選擇框組件?
裡面有搜索框,每條數據展示,以及分頁
一個下拉組件,最難的部分就是dropdown的實現。
一個dropdown組件沒這麼容易實現的,看過element的實現,也是引用 popper.js來處理。
難度在於考慮你這個組件放在的div是否被定位了,並且 overflow: hidden 了。所以,dropdown 出來的部分,是要append到body里的;而這部分定位又要放到dropdwon組件對應的位置,還要考慮縮放窗口位置的改變來更新。
所以,首要目標先實現dropdown組件才是關鍵。
搜索,分頁這些都是很次要的。
圖省事可以找現成的組件
自己做的話,其實也就那樣,定義組件和props,加好slot,外部傳特定的內容進來就行,展示的話獲取個當前組件的位置然後搞一層div蓋在頁面上層就行
這個問題是在問怎麼封裝一個業務組件的問題,所以直接丟一個框架或者丟一個GitHub鏈接,肯定是一個不負責任的行為,但是,我還是肯定這個回答的。
GitHub上找找業內成熟UI組件庫的源碼看看.
問如何封裝一個選擇框組件這樣一個具體的業務組件,而且列舉的幾個具體的需求,裡面有搜索框,每條數據展示,以及分頁。
那麼大概畫出來的原型應該是下面這樣的。