【发布时间】:2020-04-13 02:41:22
【问题描述】:
假设在我的应用程序中我有以下延迟加载模块:
- 登录模块
- 管理模块
App-routing.module.ts `
const routes: Routes = [
{ path: 'login', loadChildren: () => import('./login/login.module').then(m => m.LoginModule) },
{ path: 'admin', loadChildren: () => import('./admin/admin.module').then(m => m.AdminModule), canLoad: [AdminGuard]}]
`
在我创建的 LoginModule 中 StoreModule.forFeature('login', fromLogin.authReducer)。
登录成功后程序重定向到管理页面(模块)。
还有商店派发新动作:this.store.dispatch(login({some object}));
一切正常。
问题
当我尝试在管理模块上刷新页面时,我会从 LoginModule 丢失存储。
正如您在路由模块中看到的那样,我正在使用 Guard canLoad 逻辑,其中的逻辑应该会更改 LoginModule 商店中的状态,但刷新页面后我丢失了它。
工作正常并在 LoginModule 中更改状态:
【问题讨论】:
标签: angular redux frontend lazy-loading ngrx