前端技術(shù)堆棧

目前項(xiàng)目采用的技術(shù)堆棧

一. 開(kāi)發(fā)環(huán)境的構(gòu)建

前端(PC和H5)的開(kāi)發(fā)環(huán)境是以nodejs為驅(qū)動(dòng), 使用express.js搭配webpack構(gòu)建的集編譯,代碼分離,打包壓縮,靜態(tài)資源服務(wù),熱更新,反向代理等功能的前后端分離模式。

二. 客戶端代碼的選型

項(xiàng)目使用react系列編寫(xiě),包含react,react-router,redux,react-redux,immutable,antd。

  1. 入口:
    利用瀏覽器的history(或者h(yuǎn)ash) api,與后端約定唯一的入口頁(yè)面,配置react-redux-router采取前端路由的方式。使用webpack的代碼分離機(jī)制,實(shí)現(xiàn)動(dòng)態(tài)加載。
  2. 數(shù)據(jù)與視圖:
    以react的思維模式,結(jié)合使用immutable.js,引入了不可變數(shù)據(jù)結(jié)構(gòu),實(shí)現(xiàn)數(shù)據(jù)單向流,驅(qū)動(dòng)視圖以狀態(tài)機(jī)的形式改變。
  3. 展現(xiàn)層:
    PC端以css的盒模型為基礎(chǔ),選取螞蟻金服的一套基礎(chǔ)組件antd,通過(guò)自定義樣式主題,生成一套超客ui組件。H5端以css的flex響應(yīng)式模型為基礎(chǔ),選取antd-mobile組件,引進(jìn)了淘寶的高清方案,匹配不同的設(shè)備渲染策略。
  4. 與服務(wù)端交互層
    數(shù)據(jù)以json格式傳輸,與后端約定固定的返回格式和字段。
    PC端校驗(yàn)登錄信息分為兩個(gè)方面,在頁(yè)面中使用timer實(shí)時(shí)監(jiān)測(cè)cookie的改變,在ajax中使用自定義包裝過(guò)的庫(kù),登錄信息失效時(shí),接口會(huì)返回錯(cuò)誤狀態(tài)碼和跳轉(zhuǎn)登錄鏈接。H5端的ajax請(qǐng)求包裝了Request URL,統(tǒng)一綴上了url的token。
    開(kāi)發(fā)環(huán)境中使用反向代理,端口號(hào)可配置為對(duì)接的后端開(kāi)發(fā)人員。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,889評(píng)論 25 709
  • Gitbook Repo 撰寫(xiě)本文的時(shí)候筆者閱讀了以下文章,不可避免的會(huì)借鑒或者引用其中的一些觀點(diǎn)與文字,若有冒犯...
    王下邀月熊閱讀 1,155評(píng)論 1 9
  • 前言 近年來(lái),隨著瀏覽器性能的提升與移動(dòng)互聯(lián)網(wǎng)浪潮的洶涌而來(lái),Web前端開(kāi)發(fā)進(jìn)入了高歌猛進(jìn),日新月異的時(shí)代。這是最...
    慢清塵閱讀 2,047評(píng)論 2 4
  • iOS 高仿Timi記賬,歡迎star,THX
    指尖的跳動(dòng)閱讀 477評(píng)論 0 2
  • 早上一睜眼5點(diǎn)40分了,由于昨晚兒子到了11點(diǎn)還要讀書(shū),結(jié)果導(dǎo)致11點(diǎn)半我才睡覺(jué),早上就不是那么愿意起床,但是想到...
    成長(zhǎng)的美好時(shí)光閱讀 316評(píng)論 1 0

友情鏈接更多精彩內(nèi)容