首页 > 解决方案 > 如何使用 rx-angular 设置嵌套属性状态

问题描述

我似乎无法找到一种方法来设置我的状态的嵌套属性。

// state
{
  name,
  info: {
    foo
    email
  }
}

我的状态有多个属性,信息也是一个具有属性的对象。我想添加或更新 info 的属性。我想在将信息设置回状态之前我可以做一个get('info')和做。{...info ...newProp}但是,这将需要一个get()电话。

有没有办法用 set 更新信息属性?state.set('info.foo', 'bar')

标签: angularrxjs

解决方案


const reduceFn = (oldState: IRobotState) => {
        const rsi: any = rsiData[rsiData.length - 1];
        const live = {...oldState.live || {}, rsi: rsi.value};
        return {live};
      };
this.state.set(reduceFn);

推荐阅读