gpt4 book ai didi

angular - ngrx forms 8 reducer 不更新状态

转载 作者:行者123 更新时间:2023-12-02 02:43:02 28 4
gpt4 key购买 nike

我正在使用 ngrx-forms(特别是 ngrx 8 语法)来同步我的表单和状态存储。表单状态更新操作已成功发送,例如

{
controlId: 'adForm.location.community',
value: 'wst',
type: 'ngrx/forms/SET_VALUE'
}

但是,状态始终保持不变,以上在 Redux 开发工具中不会产生差异。

我的 reducer 如下所示:

export const reducer = createReducer(
initialAdFormStoreState,
onNgrxForms(),
// Other action handlers
// ...
)

export const adFormReducer = wrapReducerWithFormStateUpdate(
reducer,
(s) => s.data.form,
adFormValidators,
)

初始状态创建如下:

const initialAdFormStoreState: AdFormStoreState = {
data: {
form: createFormGroupState<AdForm>('adForm', { /* ... */ })
// ...
},
// ...
}

我无数次检查了更新状态文档,一切看起来都是正确的。

最佳答案

onNgrxForms() 仅检查功能状态对象顶层的表单。它没有更新我的状态,因为我在 data.form 处有表单,因为我们将状态拆分为 ui/data。我不得不把它提升一个水平。或者,您可以编写自己的 onNgrxForms() 实现。

关于angular - ngrx forms 8 reducer 不更新状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57965413/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com