開始之前
這是自己的第一篇部落格文章,機緣巧合選擇了掘金這個平臺。感覺作為一個程式猿,平時把主動學習或是工作上學到的東西寫下來,既可以作為一個知識的積累,同時也能和大家分享和切磋知識,希望這個好習慣能像健身一樣堅持下去。
Start
模組化想必大家都多多少少了解一些啦,在這裡就不叨叨了,直接說正題。 事情是這樣的:組內寫了一個資料統計的程式碼,打算先放在h5活動上試試。程式碼的新增邏輯和使用百度統計很像,就是建立一個 scrip 標籤,然後塞到頁面里載入統計程式碼。我們的 h5 活動有兩種開發模式,一種是最基礎的 zepto 的開發模式,另一種是如果關係到公司的一些業務邏輯,會使用自己的開發框架。普通的就直接寫咯,使用開發框架的就需要模組化來引入,然後就萌生了搞成一個npm包方便以後使用的想法。
Doing
說實話平時雖讓常用 npm install xxx,但是還真沒有自己開發過一個包。所以還是百度了一些別人的文章來參考,好在剛開始弄,需要釋出的也僅僅只有一個js檔案而已,所以還沒遇到什麼問題,在這裡,我把大致流程寫下來,給大家做參考~
-
首先要建立一個專案嘛:npm init,之後有一堆需要你和命令列互動的輸入,請自行解決。這時候你的資料夾裡就有 package.json 檔案了,至於 .gitignore,README 這些東西也看自己的需求弄就好。
-
專案建立好了,因為我的專案暫時只有一個js檔案,因此也沒有什麼參考價值,我放個截圖吧。
處女座的我還用了tinypng,我有沒有很棒,2333333。 -
搞到這裡,有些童鞋或許會有這樣的疑問,我平時載入其他npm包的時候都是直接引入檔名,並沒有指定是裡面的那個檔案,那麼我們如何定義引用 npm 包時的入口檔案呢?再來一張圖:
我們可以看到在 package.json 檔案的 main 屬性裡,我們定義了入口檔案,在這裡大家可以再注意一下第二個版本屬性,因為在你執行 npm init 命令一路回車的時候,預設版本是 1.0.0,因此,如果你的專案還不成熟,建議首位從0開始,畢竟 1.0 已經預示著是正式版了嘛,而且據我目前的使用npm應該不能用舊版本覆蓋新版本釋出,因此 0.xx 版本不用就浪費了。 -
這時要釋出我們的模組了,首先,你需要有一個npm賬號,然後在命令列輸入 npm login 進行登入,登入後會要求你輸入賬戶名、密碼、還有郵箱,都輸入並且校驗成功後,就提示你登入成功啦。這時候就可以在模組根目錄下輸入 npm publish 來發布模組了,如果你需要把模組釋出到指定的伺服器上的話,你可以參考一下我上面那個截圖中的 publishCondfig 屬性來設定你的源。好啦,羅裡吧嗦說了一堆,第一篇文章可能有點小激動,所以廢話較多,希望大家見諒。文章有問題的話(不管是你的還是我的),請在下面留言,各位老鐵,下篇文章見。