開發回顧
- 列表與列表勾選(多選)如何解耦【mark 微信端】
- 微信簽名邏輯封裝在組件內後,在同一個頁面有多個該組件時,如何避免重複簽名致使的簽名失敗:去抖並收集resolve,在簽名成功後才集中觸發resolve,通知各個組件簽名成功
- vue指令scrollToView
- 表單組件
- request的裝飾器
- 三層數據架構
- 基於npm script自動化三層數據架構
- 跟隨項目的組件庫持續化迭代與二次開發
- 基於vue-cli3插件化的項目模板搭建
- next方法將請求的數據回填到組件
性能優化:css
-
http網絡層面html
- 開啓gzip
- cdn
- 減小請求,與請求的大小
- 減少圖片體積
- Preload
- Prefetch
- 強制使用緩存Expires/cache-control
-
圖片層片vue
- 使用雪碧圖組合普通圖片或svg圖
- 使用字體圖標或svg,減小請求,可更改顏色,加陰影,高清不糊
- 針對不一樣分辨率的屏幕加載不一樣的質量的圖片srcset
- 圖片使用離散餘弦算法壓縮圖片,以便獲得從模糊到清晰的加載行爲
-
發佈包層面es6
- 發佈es6到線上 type=module nomodule
- 將更新頻率不一樣的代碼,打包到不一樣的js文件,如工具庫,ui等放到vender.js,項目內部工具方法等放到lib.js等
-
樣式層面web
- 按重要程度決定記載時間
- 避免將重要的樣式使用@import導入,被導入的樣式文件會在該文件加載完成後才發起請求加載
-
邏輯層面算法
- 使用去抖,節流函數
- 儘可能使用面向對象方式,方便複用避免污染全局
- 函數惰性化處理
-
css樣式vue-cli
- BEM原則(塊(block)、元素(element)、修飾符(modifier))
- css modules
頁面渲染流程npm
web安全緩存
將來:安全
- 單元測試
- 持續化自動集成
歡迎關注本站公眾號,獲取更多信息