我使用ngrx-forms (特别是ngrx8语法)来同步我的表单和状态存储。表单状态更新动作被成功分派,例如
{
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', { /* ... */ })
// ...
},
// ...
}我已经无数次地检查了更新状态文档,一切看起来都是正确的。
发布于 2019-11-01 07:55:14
onNgrxForms()只检查功能状态对象顶层的表单。它没有更新我的状态,因为我们将状态拆分为ui/数据,所以我将表单放在了data.form中。我不得不把它提升到一个高度。或者,您可以编写自己的onNgrxForms()实现。
https://stackoverflow.com/questions/57965413
复制相似问题