フォームのところでRedux Formを使っており、チェックボックスにチェックを入れるとstate.form.フォーム名.valuesにフィールド名をkeyにしたboolean値が入るのですが、これを一つのチェックボックスのチェックを外すと連動して他のチェックボックスも外す(trueからfalseになる)ことができるapiなどあるのでしょうか?
formValuesSelectorを使ってみましたが、期待通りの挙動になりませんでした。
公式を見てもそれらしいものがなかったので、わかる方がいれば教えていただければと思います。
サンプルコード
下記のサンプルコードでlabel="A"とlabel="A-1"とlabel="A-2"にチェックが入ってる状態(state.form.RecordPrintDialog.values:{plan:true,info:true,comment:true})でlabel="A"のチェックを外すとlabel="A-1"とlabel="A-2"のチェクが外れる({plan:false,info:false,comment:false})
import React from 'react'; import { connect } from 'react-redux'; import { reduxForm, Field } from 'redux-form'; import RenderCheckbox from '@/common/reduxForm/Checkbox'; class PrintDialog extends React.Component { render() { return ( <React.Fragment> <div> <Field name="plan" label="A" component={RenderCheckbox} /> </div> <div> <Field name="info" label="A-1" component={RenderCheckbox} /> <Field name="comment" label="A-2" component={RenderCheckbox} /> </div> </React.Fragment> ); } } const mapStateToProps = state => { return { printOption: state.form.RecordPrintDialog, }; }; PrintDialog = reduxForm({ form: 'RecordPrintDialog', enableReinitialize: true })(PrintDialog); export default connect(mapStateToProps)(PrintDialog);
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/27 01:32