Angular 2 : Access property of pipe returning object

标签 angular angular2-template

我有一个自定义的 angular2 管道,它使用服务将 uid(字符串)转换为 UserInfo 对象。

@Pipe({name: 'userInfo'})
export class UserInfoPipe implements PipeTransform {

    constructor(public _userService: UserService) {
    }

    transform(uid:string) : any {
        /*let users = this._userService.users.filter((u)=> {
            return u.uid==uid;
        });
        if(users.length==1) return users[0];
        return null;*/

        return {"Name":"hans","Age":13};
    }
} 

在我的组件中我有一个绑定(bind):

 <Label row="4"  text="Author: {{event?.author | userInfo | .Name}}" class="small-spacing"></Label>

event?.author 返回 UID,在通过 userInfo 进行管道传输后,我得到了一个对象。但是我怎样才能访问那个对象的属性呢?有语法吗? .Name 无效。

最佳答案

刚刚才知道

(event?.author | userInfo).Name   

完全符合我的要求:它显示管道返回的对象的 Name 属性。

关于 Angular 2 : Access property of pipe returning object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38772173/

相关文章:

Angular 2 Observable with ChangeDetectionStrategy.OnPush 和异步管道不工作

angular - Marble 测试 rxjs 在 Angular 服务上可观察到

angular - 捕获包装到可观察对象中的 promise 错误 - angular 2

angular - 不支持调用 Angular2SocialLoginModule 函数调用

angular - 如何让 Angular 2/4 更新现有 DOM 节点而不是删除+创建它们?

typescript - 带有 TypeScript : Importing components into components 的 Angular2

angular - 带有 Angular HttpClient 的 RxJs switchMap

Angular 6 DataTables - 如何获取当前页面

javascript - RxJS Observable forkJoin 不并行执行

angular - 如果已缓存,如何使用 Angular 2 代码在任何浏览器中强制从服务器加载 index.html