如下圖所示,SAP 電商雲 UI,使用者的購物車 ID,持久化在浏覽器的 local storage 裡:
為什麼會觸發 State module 的加載?
并沒有直接用到 StateModule:
預設使用 local storage:
建立一個 subscription,自執行:
上圖代碼的邏輯:
unsubscribe 之後仍然可以 subscribe,為啥?
對于 interval 産生的 Observable 來說,可以被 unsubscribe.
代碼第 47 行的 storage 引用,來自函數 getStorage,從 winRef 擷取:
winRef 通過依賴注入生成:
winref 包含了 Spartacus 團隊針對 Document 的一個封裝:
直接利用 Angular 标準的 injection token 來檢測運作環境是浏覽器還是伺服器: