Devo usar o repositório de formulário redux em vez do estado do componente e o repositório personalizado do Redux?

Acredito que em qualquer aplicação deve haver uma fonte de verdade.

Meu aplicativo estará tendo

Mais de 90 formulários de transação e 150 relatóriosEstruturas de dados complexas (nível pai, nível filho, cálculos)

Então, no React, encontrei três lugares confusos para armazenar o estado:

Estado do componente - use quandonão quer compartilhar dadosLoja personalizada Redux (gerenciada pelo desenvolvedor) - use quando queremos compartilhar dadosLoja Redux-form (gerenciada por redux-form) - use para validaçãoComecei a usar o formulário reduxapenas para validaçãoe então eu recebiconfuso quando me permitiu acessar o repositório de formulário redux para obter dados, já que eu já estava acessando dados do estado Component AND também do meu repositório personalizado no redux

O formulário Redux não registra campos ocultos. Para registrar campos ocultos, é necessário criar um campo com atributo desativado, etc.

Se você fizer algum cálculo como, QUANTIDADE = QUARTO * TAXA; Aqui, o usuário inserirá QTY e RATE AND AMOUNT serão computados. Aqui ele refletirá imediatamente no estado do componente, mas não no estado de forma redux. Para fazê-lo refletir na forma redux, temos que disparar.

this.props.dispatch(change('Invoice', 'amount', 55))

Nem sempre será possível evitar o estado do componente, se eu escrever o código da fórmula de cálculo será semelhante a este

Somente estado de forma Redux

const amount = someReduxFormApiGet(QTY) + someReduxFormApiGet(RATE) this.props.dispatch(change('Invoice', 'amount', 55))

Apenas estado de reação

onChange(){ will have set QTY & RATE in component state} const amount = this.state.QTY * this.state.RATE

Conclusão: Se eu for comredux-form Terei que escrever um código extra para tornar o armazenamento redux estável em sincronia, onde como estado no componente React estarei tendo ohandleChange() função que estará desenhando estado emthis.state. Também sinto que vou ter muita flexibilidade no estado do componente

Se meu modelo de dados se tornar mais complexo, será muito difícil gerenciar no armazenamento de formulário redux. Então aqui estou pensando em não usarredux Loja personalizada OU estado do componente

Outras bibliotecas que validam as entradas do React não estão usando o Redux para implementar a validação. É apenas o redux-form que está usando o redux para gerenciar a validação.

Então cheguei à conclusão de que

Forma Reduxnasceu apenas para validação enão para gerenciar um modelo de dados complexo.

Modelos de dados complexos devem ser gerenciados no armazenamento personalizado redux OU no estado do componente de acordo

A partir da documentação do Redux-form, ele lida muito bem com a validação, mas, para fins de modelagem de dados, sugere soluções que não são 100% diretas

Precisa de ajuda para decidir

Devo usar armazenamento de formulário redux para modelagem de dados

OU

basta usar para validação

E

usar estado de componente e armazenamento redux personalizado para modelar dados?

questionAnswers(4)

yourAnswerToTheQuestion