Vue組件化開發思考,vue組件思考

來源:互聯網
上載者:User

Vue組件化開發思考,vue組件思考

一般說到組件,我首先想到的是彈窗,其他就大腦空白了。

因為覺得這個是在項目中最常用的功能,提取出來方便複用的才是組件~

然而我才發現這個想法是有問題的。

我發覺可能從意識上把Vue的組件和UI庫的組件(彈窗之類的)混淆了。。。

緣起於最近的一個表單開發,頁面上有2個是聯動菜單的選項。

首先想到的是,這個樣式和選擇地址的那個聯動菜單,完全一樣哈~

(廢話,同一個項目 當然要保持ui風格的相同啊!)

不過差別在於 我這個是 一個1級 一個2級, 地址那個是4級的.

然後我就想著把那個地址的組件引進來用,發現這是個寫死4級的

這個時候我只想到2種辦法

1,分別改寫成1級選項和2級選項的2個組件(好像比較low)

2,引用4級聯動組件,改寫成可選1級選項或2級選項(有點麻煩,到時候還要測地址沒被我改壞)

3,重寫一個可以通用無限聯動菜單(方便可選級的)

最後選了3,自己重新搞了個。

至於為什麼沒有整合2,主要考慮到這兩個組件所處的業務頁面不同邏輯也有些差異:

1擷取列表的邏輯可能不同,是一次性擷取4級還是每次只擷取1級或2級,

這個不確定的話,做成萬用群組件就都要處理了

2我這個是直接彈選項的,地址那個是跳新頁面再點擊彈選項的

我這個可以父子組件傳遞資料,地址那個用了vuex(非父子)

總之就是實現成本和維護成本高,複用價值沒那麼高。

相當於2個頁面都各自有一個樣式相同邏輯不同的組件。

這完全是2個組件~

複製其通用樣式部分,在各自內部實現其商務邏輯。

兩個組件放在不同的板塊內,相互獨立,方便管理和維護。

這個時候 再結合vue組件化的圖來看 你會清楚

對於組件化開發

分治(自有商務邏輯)比複用(相同邏輯) 更為重要!

複雜的商務邏輯配合vuex更方便實現組件化~

所以我理解組件化的組件是應該泛指是 高內聚低耦合(某phper講給我的專業名詞,不知道放這用對不對哈)的~

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.