我有一个自定义的ErrorHandler,当http响应状态为401或403时,它会导航到登录页面。 调用navgateByUrl时,我可以看到登录页面,但无法与之交互。
import { ErrorHandler, Injectable, Injector } from '@angular/core';
import { Router } from '@angular/router';
import { Storage } from '@ionic/storage';
import { TOKEN_NAME } from '../../api.config';
@Injectable()
export class AuthErrorHandler implements ErrorHandler {
constructor(private injector: Injector) { }
handleError(error) {
console.error(error);
const router = this.injector.get(Router);
const storage = this.injector.get(Storage);
if(error === '401' || '403') {
router.navigateByUrl('/login');
storage.remove(TOKEN_NAME);
}
}
}
答案 0 :(得分:0)
尝试使用navigation()方法。
router.navigate(['/login']);