我想知道更改租户后重新加载整个登录页面的原因:
save(): void {
if (!this.tenancyName) {
abp.multiTenancy.setTenantIdCookie(undefined);
this.close();
location.reload();
return;
}
}
然后在重新加载时,在app-session.service.ts中调用init()
函数:
init(): Promise<boolean> {
return new Promise<boolean>((resolve, reject) => {
this._sessionService.getCurrentLoginInformations().toPromise().then((result: GetCurrentLoginInformationsOutput) => {
this._application = result.application;
this._user = result.user;
this._tenant = result.tenant;
resolve(true);
}, (err) => {
reject(err);
});
});
}
这对我没有意义,因为在GetCurrentLoginInformationsOutput
函数中,当前的本地会话正在使用各种API访问令牌进行更新,然后在用户成功登录时再次更新。
目前,我改变了交换租户背后的逻辑,我删除了location.reload()
部分。其背后的原因是加快了应用程序的响应时间。
我最大的问题是,在不调用重新加载页面部分时是否会丢失任何有价值的信息,应用程序是否正常工作?
租户可能有不同的语言和其他设置。重新加载页面会重置状态等。
但是如果我在登录后更新这些设置,那么重装页面部分似乎不是多余的吗?
着陆页也需要一些设置(例如语言)。