Angular+NGRX多浏览器标签页访问:是否共用同一NGRX实例?
Angular + NGRX 多标签页实例隔离问题
当你在同一浏览器的多个标签页中打开localhost:9000的Angular应用时,每个标签页都会拥有独立的NGRX实例。
原因很直接:浏览器的每个标签页都是独立的JavaScript执行上下文,Angular应用在每个标签页加载时会从头完成完整的初始化流程——包括创建新的NGRX Store实例、初始化初始状态、注册reducers和effects等。这些实例之间完全隔离,一个标签页内的状态变更不会对其他标签页的状态产生任何影响。
如果需要实现多标签页之间的状态同步,你需要额外借助浏览器的跨标签通信机制,比如监听localStorage/sessionStorage的存储事件,或者使用BroadcastChannel API来同步状态变更。
内容的提问来源于stack exchange,提问作者Naveen Kumpatla
相关产品推荐
相关产品推荐

