在将keycloak与angular成功集成之后,将接收令牌并返回配置文件数据。然而,“某些”javascript特性不起作用。控制台中没有错误,网络信息似乎没有问题。如果我要从AppModule中删除提供者信息,页面就会正常加载,但是一旦调用了keycloak,页面上的切换功能就不起作用了,或者加载程序会无限加载。如果我注释掉加载器,页面就会出现,但切换菜单等功能不起作用。我不确定是否有人遇到这个问题时,集成keycloak与角度,并可以指导我如何解决这个问题。
AppModule
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
KeycloakAngularModule
],
providers: [
{
provide: APP_INITIALIZER,
useFactory: initializer,
multi: true,
deps: [KeycloakService]
}
],
bootstrap: [AppComponent]
})
export class AppModule { }初始化器函数
export function initializer(keycloak: KeycloakService): () => Promise<any> {
return () =>
keycloak.init({
config: environment.keycloak,
initOptions: {
onLoad: 'login-required',
checkLoginIframe: false
}
}).catch((e) => {
console.log("Error thrown in init "+e)
});HTML -我将app-side-mini-toggler的href更改为routerLink。如果没有,点击将重定向到localhost:4200/#,而不是切换
<div class="col-xl-5 col-lg-5 col-md-5 col-sm-3 col-4">
<a class="mini-nav-btn" routerLink="#" id="app-side-mini-toggler">
<i class="icon-menu5"></i>
</a>
<a href="#app-side" data-toggle="onoffcanvas" class="onoffcanvas-toggler" aria-expanded="true">
<i class="icon-chevron-thin-left"></i>
</a>
</div>With Loader, Page loads infinitely
Without Loader Page loads with user information but menu toggle does not work
发布于 2018-10-08 23:37:37
Keycloak可能会覆盖某些Javascript函数,具有一定的依赖性,或者只适用于特定版本的Angular。
也许这个库对您有用:https://github.com/mauriciovigolo/keycloak-angular
https://stackoverflow.com/questions/52705678
复制相似问题