multipages-generator今日發(fā)布??!媽媽再也不用擔心移動端h5網(wǎng)站搭建了!

本文也可以在掘金我的私人博客閱讀

本文適合的讀者???????????

現(xiàn)在在手淘,京東,今日頭條,美柚等過億用戶的手機app中的,都常見h5網(wǎng)頁,他們有更新快,靈活,便于分享和傳播的特性。這里有他們中的幾個h5的例子:([手淘](https://pages.tmall.com/wow/import/17151/tmallglobal?locate=icon-3&spm=a215s.7406091.icons.3&scm=2027.4.1.16),[美柚](https://uedkit.meiyou.com/annualmeeting/game/))。這些app中都嵌者數(shù)以百計,千計的h5網(wǎng)頁。背后他們開發(fā)這些h5的框架是怎么樣的呢?

或許你也想開發(fā)一些h5,或者簡單的react,vue應用,做些廣告,做些互動和營銷,發(fā)布到微信朋友圈傳播,那如何快速的搭建和發(fā)布這些h5呢?

或許你是前端工作不久的初學者,搭建這樣的多頁h5網(wǎng)站,怎么樣的架構才是正確的打開方式呢?

或許你想學習下充斥耳邊的webpack,vue,nodejs,es6,MERN框架的另類玩法,那這篇文章也適合你!

最重要的是,你煩透了移動端適配,移動端性能優(yōu)化,你只想專注于功能開發(fā),那這篇文章就是為你而準備的!

如果讓你現(xiàn)在從零開始搭建工程開發(fā)一個h5頁面并且發(fā)布到線上,需要多久?

滴答滴答滴答!~

你可能需要做以下這些事件???

* 搭建服務端工程,分好目錄結構,配置要數(shù)據(jù)庫mysql,mongodb,redis;

* 搭建前端工程,劃分目錄結構

* 前端,服務端劃分dev,test,prod環(huán)境

* 前端配置webpack做編譯,多個h5是多頁面的,可能你還要倒騰下webpack多頁面的配置方案

* 好了,可以開始開發(fā)了,mobile h5還有適配問題,ios有retina屏,android老舊機型要兼容

* 開發(fā)好了,要生產發(fā)布編譯了,生產的靜態(tài)文件放服務器?不,還是CDN上傳比較好

* 接下來要部署了,單個實例容易掛,要做cluster集群發(fā)布或者引入pm2做集群發(fā)布

* 前端不熟悉linux,發(fā)布了大半天

* 出錯了查看日志,來回折騰了大半天

* 折騰了好久,終于上線了,可以轉發(fā)朋友圈了~

上面折騰一番,要多久你心里也有數(shù)了。

麻煩的事情,總有對應的解決辦法,發(fā)布的multipages-generator,或許對你會有所幫助!

上菜multipages-generator!???

multipages-generator 是一個類似express-generator的,一鍵生成多頁h5網(wǎng)站架構模板的npm模塊;他主要是為了移動端h5,或者簡單的vue,react,angular應用的網(wǎng)站架構模板;該架構模板其實也是淘寶,今日頭條,美柚等公司開發(fā)app的網(wǎng)站架構的縮影。注意,他是一個架構,是一種移動端解決方案,不是現(xiàn)成可部署的網(wǎng)站模板。

他主要的特點是全而精,全面,開發(fā)h5所需的他基本都全了,精是開發(fā)出來的網(wǎng)頁高性能(未來會更好),手機適配好。具有的特別請移步github查看。

一個h5出產的截圖,利用multipags-generator開發(fā)出下面的h5,我大概估算了下只需要1個小時。


也可以用手機chrome,微信,淘寶的掃一掃打開體驗下

大家可以測試下他的性能,android,ihone 4/5/6/7/8, iphonex, 等的兼容性(用了手淘flexible,他有的這里都支持)。

multipages-generator 支持以下特點:

* 支持webpack編譯多頁面,可編譯指定項目,也可編譯全部項目

* 前端編譯支持熱更新

* 編譯出的網(wǎng)頁性能經(jīng)過優(yōu)化,符合最佳實踐(還不完善,后面加入淘寶性能優(yōu)化的全部內容)

* 支持development,producton環(huán)境區(qū)分

* producton環(huán)境可配置生產的css,js,images自動編譯后上傳OSS服務器

* webpack編譯后的html模板支持ejs等模板引擎

* 使用node.js做服務,nodemon熱更新

* 支持pm2集群啟動

* ?? (新) 加入手淘flexible布局方案,適配不同尺寸和DPI的屏幕,加入postcss支持

* ?? (新) 支持生產release模式,配置下七牛云CDN,編譯后js,css,圖片等資源文件上傳cdn

安裝

通過NPM全局安裝即可使用:

npm install multipages-generator -g

創(chuàng)建并運行??

步驟一:執(zhí)行multipages-generate

multipages-generate

步驟二:出現(xiàn)輸入項目名提示,并輸入您的項目名稱

? Project name: <輸入項目名>

步驟三:進入目錄 -> install -> 啟動

install dependencies:

%s cd %s && npm install

run the app:

npm run start

or:

pm2 start process.json

運行與開發(fā)

啟動服務端

上面已經(jīng)啟動了,如果還沒執(zhí)行上面的步驟,執(zhí)行以下命令

npm run start

前端熱啟動項目facemerge

打開另一個終端黑窗

npm run watch:facemerge

會有頁面打開,沒有的話手動打開http://localhost:2000

注意:

本應用需啟動兩個服務,一個是服務端node.js(端口默認為4000),一個是前端(browser-sync,默認2000)

這里為了讓開發(fā)時更愉悅,啟動了前端服務,具有熱更新的性能,每次更新自動編譯輸出到express工程的對應目錄中,項目部署時不需要啟動;

新增一個項目

apps 目錄下已有facemerge,viewport兩個項目,新增一個項目xxx,目錄結構需參考facemerge

```bash

├─facemerge

│ ├─assets

│ │ ├─css

│ │ └─imgs

│ ├─js

│ └─views

└─voicemerge

```

"watch:facemerge": "rimraf public &&cross-env ENV=dev PROJECT_NAME=facemerge node ./tools/webpack.watch.js"

啟動方式跟上述 “開發(fā)模式啟動項目facemerge” 相同

發(fā)布

開發(fā)好了就發(fā)布線上,這里也整理了一套30分鐘發(fā)布到線上的教程。但是僅限于個人玩一玩,并不能用于生產。但是實際上企業(yè)中使用的核心思想也是這套 + cI自動化部署;


總結

本文介紹了multipages-generator(簡稱MG)迅速搭建移動端h5工程,以及迅速發(fā)布自己的應用到云服務器上。希望對前端同仁有所幫助,現(xiàn)在MG還在不斷的迭代演進中,如果對你有所幫助,希望動動手給我的GitHub打個start,鼓勵下我前進的動力??!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容