Rxjs 如何使用ngrx将一个可观测阵列投影到另一个阵列?

Rxjs 如何使用ngrx将一个可观测阵列投影到另一个阵列?,rxjs,ngrx,Rxjs,Ngrx,我有一个组件 export class Test implements OnInit { public items: Observable<Item[]> constructor(private store: Store<IAppState>) ngOnInit: void { this.items = this.store.pipe(select(selectItems)); } } 我想将时间戳从utc转换为本地。所以我想做一些类似的

我有一个组件

export class Test implements OnInit {
  public items: Observable<Item[]>

  constructor(private store: Store<IAppState>)
  
  ngOnInit: void {
    this.items = this.store.pipe(select(selectItems));
  }
}
我想将
时间戳
从utc转换为本地。所以我想做一些类似的事情:

export class Test implements OnInit {
      public items: Observable<Item[]>
    
      constructor(private store: Store<IAppState>)
      
      ngOnInit: void {
        this.items = this.store.pipe(select(selectItems).select(x => new Item { timestamp = new Date(x.timestamp + " UTC") }));
      }
    }
导出类测试实现OnInit{
公共物品:可见
构造函数(私有存储:存储)
恩戈尼尼特:空虚{
this.items=this.store.pipe(select(selectItems).select(x=>newitem{timestamp=newdate(x.timestamp+“UTC”)});
}
}
上面的语法不是真实的(它基于C#LINQ)。我在尝试一些类似于

export class Test implements OnInit {
      public items: Observable<Item[]>
    
      constructor(private store: Store<IAppState>)
      
      ngOnInit: void {
        this.items = this.store.pipe(map(state => selectItems(state), // something here...));
      }
    }
导出类测试实现OnInit{
公共物品:可见
构造函数(私有存储:存储)
恩戈尼尼特:空虚{
this.items=this.store.pipe(map(state=>selectItems(state),//此处某物…);
}
}
我被困在
//这里的某个部分。

与C#LINQ select()等价的是

因此,假设selectItems函数返回一个数组,您可以将所选项目“映射”到以下项目:

constructor(private store: Store<IAppState>) {}

public ngOnInit: void {
    this.items = this.store.pipe(map(state => {
        const selectedItems = selectItems(state);
        return selectedItems.map(x => new Item(...));
    }));
}
构造函数(私有存储:存储){}
公共ngOnInit:无效{
this.items=this.store.pipe(映射(状态=>{
const selectedItems=selectItems(状态);
返回selectedItems.map(x=>newitem(…);
}));
}
constructor(private store: Store<IAppState>) {}

public ngOnInit: void {
    this.items = this.store.pipe(map(state => {
        const selectedItems = selectItems(state);
        return selectedItems.map(x => new Item(...));
    }));
}