如果我们在多个选项卡中使用相同的应用程序,则两个应用程序都使用相同的本地存储来存储 ngIdle.expiry,并且一个应用程序扩展另一个应用程序的会话。在当前版本中是否有解决此问题的方法,例如配置会话存储而不是本地存储或更改 ngIdle.expiry 中的 id 字段。
问问题
1435 次
2 回答
2
在ng-idle
文档中,我看不到更改要使用的存储的方法。
因此,您可以在代码库中保留项目的副本(或发送 PR),并将此行更改为使用sessionStorage
。它可能只是按照您的意愿工作。
于 2018-03-09T11:05:00.947 回答
2
我知道这已经过时了,但是对于其他搜索此主题的人来说,是的,如果您使用的是 ng2-idle (Angular 2+),那么有一种内置的方法可以做到这一点。
在您的 app.module.ts 中,您需要在提供程序部分提供 SimpleExpiry:
@NgModule({
declarations: [ . . .],
imports: [ . . . ],
providers: [
. . .
{
provide: IdleExpiry,
useClass: SimpleExpiry
}
]
有关更多信息,请参阅https://github.com/moribvndvs/ng2-idle#extensible-expiry。
于 2020-02-10T21:23:57.713 回答