1
ReactとReduxフォームを使用してフォームを作成しています。私はformValueSelector
を使用していくつかの入力フィールドに接続します。しかし、これらの入力フィールドをUIで更新すると、フォームは再レンダリングされません。接続値が更新されたときにフォームが更新されない(Reduxフォーム)
// HelpForm.jsx
import React from 'react';
import { connect } from 'react-redux';
import { reduxForm, formValueSelector } from 'redux-form';
import CategorySelectBlock from 'apps/help_form/components/CategorySelectBlock';
const selector = formValueSelector('help_form');
const mapStateToProps = state => ({
category: selector(state, 'category'),
subcategory: selector(state, 'subcategory')
});
class HelpForm extends React.Component {
render() {
const {
category,
subcategory
} = this.props;
console.log('Rendering HelpForm');
console.log('category:', category);
console.log('subcategory:', subcategory);
return (
<form id="helpform">
<CategorySelectBlock
category={category}
subcategory={subcategory}
/>
</form>
);
}
}
const ReduxHelpForm = reduxForm({
form: 'help_form'
})(HelpForm);
export default connect(
mapStateToProps
)(ReduxHelpForm);
私は(これらはCategorySelectBlock
コンポーネント内で定義されているcategory
またはsubcategory
フィールドの新しい値を選択した後でも、このHelpFormコンポーネントは一度しかレンダリングされた私のコンソールログから見ることができます:私のコードは次のようになります)。
何かが間違っている、または誤解していますかformValueSelector
?どんな指導も大歓迎です。ありがとうございました!