问题标签 [canactivate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - CanActivate:带有套接字侦听器的可观察布尔值
我正在尝试从这样的服务器的套接字中获取属性
数据将返回 true 或 false 所以在我的路由守卫中我有这个
但它告诉我“声明类型既不是'void'也不是'any'的函数必须返回一个值。” 我一直在努力想办法让这项工作发挥作用,但我已经阅读了很多其他问题,但无济于事。控制台日志记录 res 确实给了我真假。
angular - Uncaught (in promise): TypeError: guard is not a function - when Class extends another Class
我在下面的相同配置在一天之前工作正常,并且在我的机器上不再工作。我检查了其他机器,它在这些机器上仍然可以正常工作。这就是我正在做的事情。
应用路由:
UserConfig 服务:(如您所见,它扩展了 DataProviderService)
数据提供者:
如错误所示,对于 UserConfigsService,防护设置为未实现 canActivate 的 DataProvideService。
问题:
这个配置正确还是我遗漏了什么?
不明白为什么相同的配置可以在我的其他机器上运行?
有什么我应该尝试不同的吗?
更新:
进一步深入研究后,我发现每次注入 UserConfigsService 时,都会返回 DataProviderService 对象。我不确定为什么。
AppComponent 请求 UserConfigsService 但获得 DataProviderService。
typescript - EmptyError:在角度保护中使用 takeWhile 时没有序列中的元素
我们有一个 canActivate 守卫,它应该返回 Observable(boolean)。
布尔状态是从服务获得的,我们需要以 1 秒的间隔轮询 3 次,直到我们收到响应“真”。
问题是每当 takeWhile 返回 false 时,我们都会收到以下内容
下面是导致问题的代码。RXJS 是 ^6.2.1 版本 Angular CLI 是 ^6.0.8 版本
angular - 停用 ngx-rocket angular 7 入门套件中某些页面的登录屏幕
我正在使用 ngx-rocket angular7 入门套件。它实施了一个守卫,如果我还没有登录,它将弹出登录屏幕。要实现注册页面,我不希望弹出登录屏幕,注册页面应该是公开的。有谁知道如何停用那里的登录屏幕?
angular - Angular 7 CanActivate Guards 故障转移
我的所有路线上都有 CanActivate 警卫,它们正在故障转移。
例如,我有两个警卫:
还有我的路线守卫
发生的情况是,如果AuthenticationGuard
失败,它有时会检查IsAdminGuard
,而不是在某人/login
未经过身份验证时将其路由到,而是/home
将他们发送到另一个错误页面,因为他们未经过身份验证并且不是管理员,警卫应该有在第一次失败时将他们踢出局。
AuthenticationService
如果我删除了在调用时检查的身份验证 jwt isLoggedIn()
,刷新/home
路由并可以跟踪AuthenticationGuard
返回false
并仍在调用,我可以 100% 重现该问题IsAdminGuard
这是代码isLoggedIn()
想法?
angular - 在 Nativescript 中使用 AuthGuard 时如何在组件中路由
我在我的 Nativescript 应用程序中使用 nativescript-urlhandler。当我放置一个路由器时,我的应用程序路由首先在 LoginFirstComponent 中,然后在我想要的 ResetPassIdComponent 中。
我想直接路由到我想要的组件。
AuthGuard.ts
AuthGuardReset.ts
我的 AuthGuardReset.ts 没有导航到 ResetPassIdComponent,它停留在 LoginFirstComponent 中。
在 component.ts 我有这个代码:
你能和我分享一下如何解决这个问题吗?
angular - 当我在 Nativescript 中使用 canActivate 时,路由不起作用
我在 Nativescript 中有一个项目。我的项目中的问题在于 CanActivate。使用 AuthGuard 时,我的 canActivate 不会在另一个页面中导航。
我有这个routing.ts:
在 AuthResetGuard.ts 我有这个代码:
在这个 ResetPassIdComponent .ts 我有
错误:当我点击http://xxxxxx.com/v1/resetPasswordRequest/11111时,我的应用程序没有打开,只显示 splash_screen 并且在控制台中只显示所有时间
请有任何想法,如何解决我的问题?
angular - How to routing in another component when use canActivate()
I want to navigate directly in here component ResetPassIdComponent
whene I use canActivate(); Now, when I click for this component ResetPassIdComponent , my aplication navigate in first in /outsidelogin/login
and in second in resetPasswordRequest/:id
So in this canActivate() I have 2 conditions, first if I'm login and second if I'm not login navigate in this.router.navigate(['/outsidelogin/login']);
My routing.ts
#xA;Please, Can you share with me any idea, how to solve my problem?
angular - 如何在第一个函数和第二个 canActivate() 中执行
我有这个 AuthGuard。在这段代码中,我想创建一个条件。如果我的resetpasss 不为null,我想在ResetPassIdComponent 中导航,否则我想在LoginFirstComponent 中导航。
为此,我创建了 AuthGuard。
我单击电子邮件中的链接,此链接显示在geturl(){..}
. 从这个函数geturl(){..}
我得到一个 id 并保存在 localstorage 中。现在在 canActivate() 中,我想创建一个条件,在我想要的组件中导航。
你能问我如何创造条件吗?
我的路由.ts
angular - 在 canActivate() 内不返回布尔值的 Observable 处理 HttpErrorResponse
我正在尝试创建一个canActivate()
函数,它将:
当状态码401
来自Observable
ie whenHttpErrorResponse
被提升时。
===============================================
这是我的服务:
响应数据是一个 Json blob,可以是一个401
或200
状态代码,这是 Python 代码:
我目前有这个代码ERROR Error: Uncaught (in promise): HttpErrorResponse
在状态代码为时失败401
:
我正在使用角度 7.0.4。