当我在订阅者中获得某个值时,我正试图返回一个observable,但我失败了.
这是代码:
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot):Observable<boolean> {
// get route to be activated
this.routeToActivate = route.routeConfig.path;
// get user access levels
return this._firebase.isUserAdmin <-- returns Subscription, not Observable
.map(user => user.access_level)
.subscribe( access => {
// I need to return an observable here
});
}
Run Code Online (Sandbox Code Playgroud)
角度2中的可观察量资源不多,所以我不知道从哪里开始.有人可以帮忙吗?
更新 - >工作版
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot):Observable<boolean> {
// get route to be activated
this.routeToActivate = route.routeConfig.path;
// get user access levels
return this._firebase.isUserAdmin
.map(user => {
let accessLevel = user.access_level;
if (accessLevel === …Run Code Online (Sandbox Code Playgroud) 如何递归搜索嵌套对象以找到我提供的对象引用的 PATH?
我的原始对象看起来像:
a = {
b: [
{ children: [...more objects] },
{ children: [] }
etc..
],
c: [
{ children: [...more objects] },
{ children: [] }
etc..
]
}
Run Code Online (Sandbox Code Playgroud)
我想调用一个函数findDeepAndStorePath(a, obj)来查找对象引用并将其路径存储在索引数组中,例如:['b', 0, 1, 2]。