帶你用js寫可複用元件,從此你就少了引用第三方庫的煩勞!

JF_sander發表於2017-04-08

前言

  • 我們在前端開發的過程中(其它開發也一樣),總是會遇到這樣一種情況:以前做的一個專案,裡面有個元件,比如對話彈窗、登陸窗等等。一般我們寫了之後就很少去管它了,但是像這樣的一些元件,在不同的專案開發過程總是很多時候需要複用起來的。雖然現在網上很多js庫都封裝了這樣的一些元件,如果你為了圖快、方便的話,那麼直接使用這些庫也是可以的,但從這兩個方面來說,我覺得有必要我們把我們寫過的這些元件分離出來從而以後複用:1、如果你用第三方庫的話,我們都知道,有很多第三方庫並不是剛好封裝了你要的那個元件而已,比如你需要一個登陸元件,那麼可能第三方庫確實封裝了這個元件,但同時也封裝了很多其它元件,所以你如果用第三方庫的話,那麼你就會為了一個小元件引入一些龐大的js檔案和css檔案以及圖片!這樣的庫引入多了的話,那麼後期你不僅需要更多地維護各個庫的衝突等等問題,而且你的網站因此也會響應越來越慢,影響使用者體驗!2、如果你自己把你寫過的元件單獨分離出來複用的話,首先來說,你自己寫過的,那麼你用起來也會比較熟悉,對不?而且,這樣的工作你做多了以後,提高你基本功的同時,你還會發現你現在就是在寫一個“第三方庫”了,雖然有很多瑕疵,但是原理差不多的!

  • 相關示例程式碼請用瀏覽器執行相關資料夾下html程式碼!

  • 注:本文件嚴格意義上來說並不是帶你去怎麼寫一個第三方庫,主要有兩方面的原因:1、現在的第三方庫有很多已經很成熟了,我們要學會使用別人的東西,不要重複造輪子;2、真正的第三方庫考慮的問題還有很多,比如相容性、名稱空間及模組化等!但是本文件從某種意義上來說跟寫第三方庫原理差不多的!

  • 特別強調!!!特別強調!!!特別強調!!!(重要的事情說三遍)因為為了減少檔案的數量和儘量快速說明問題,本文件不考慮程式碼相容性,並且我html、js及css檔案都寫到一起了,如果你需要用的話,請自己適當調整,請知悉!同時為了說清楚問題,必要的地方我會盡量寫多註釋和包含的知識點,請自己查詢分析加深印象!

  • 當然了,倉庫不斷更新中,未來新增的元件也會逐步增加……

  • 專案文件地址

  • 寫的不對的地方,請issue我

相關文章