早期開發是以頁面爲單位,而如今更趨向於應用,應用則意味着組件化;而React揭示了一個事實,組件樹是一個函數css
<router-view>
,<transition>
,做爲一種擴展、抽象機制存在。相關的資源(js,css之類)以組件做切分,管理;而傳統的作法是按文件類型維護vue
pull(粗粒度)react
react與angular,須要手動告知有變化發生,以後它們會進行「暴力的」比對(react的diff,angular的髒檢查),來找到哪裏有變化;所以react中有pure component
一類的東西來由用戶幫助系統跳過一些比對web
push(細粒度)redux
由’watcher’主動告知哪裏發生變更,相應的會帶來額外的內存開銷。所以vue2.0採用組件push,內部pull(virtual dom比對)的策略框架
偵測成本與自動優化的平衡取捨dom
從源事件——>狀態的遷移——>狀態的改變——>ui的更新異步
e.g. 鼠標點擊——>應用狀態改變——>ui改變函數
redux與mobx與vue?組件化
以組件做爲路由映射的基本元素
url可理解爲序列化的狀態
React-router4將路由去中心化,用組件自己做爲路由,而非是以往的集中式管理。但這對於理解路由的結構;管理路由跳轉有一些問題
web路由方案,相對於應用路由,在跳轉中狀態被丟棄,而非是一層層的疊加狀態
原文連接:
http://b-sirius.me/2018/01/29/%E8%81%8A%E8%81%8A%E5%89%8D%E7%AB%AF%E6%A1%86%E6%9E%B6/