0

我想知道是否有最佳实践来模拟类似 ngrx Action 的返回值之类的东西。

假设我有一个用于创建新地址的通用组件。这可以从整个应用程序的多个位置调用:

@Effect()
createAddress: Observable<Action> = this.actions$
    .ofType(mod.CREATE_NEW_ADDRESS)
    .map(() => go("/address/create"));

然后,当用户输入所有地址信息并保存地址时,呼叫者 - 并且只有呼叫者 - 应该得到通知并更新自己(例如,将地址添加到组合框或以文本形式在摘要中显示)。

因此,Store 中的单个字段“latestCreatedAddress”是不够的。我需要多个字段,每个字段用于每个调用者。

有没有一些聪明的方法来处理这样的案例?

4

1 回答 1

0

如果不查看您当前的 AppState 是什么样子,很难给出具体的建议。您只需要根据需要让 AppState 的各个部分包含地址。

例如,对于堆栈溢出,我们可以在您的问题下方和我的答案下方添加评论。AppState(为简单起见,不对数据进行规范化)看起来像这样:

{
  question: [{
    text: 'some question',
    comments: ['a', 'b'],
    answers: [{
        text: 'some answer',
        comments: ['c']
    }]
  }]
}

此处的评论类似于您的地址,它是其他一些数据的子项。

于 2017-07-13T03:09:38.933 回答