0
私は、アプリケーション状態の変更によって更新されているredux-formのフィールド(source-file)を持っています。状態値はフィールドに正しく配信されていますが、送信をクリックすると、最初のフィールド(名前)のみが送信されます(対話形式で入力します)。Redux-form:州からのフィールド値が提出されていません
私はここで間違っていますか?
import React, { Component, PropTypes } from 'react';
import { reduxForm, Field } from 'redux-form';
import { connect } from 'react-redux';
import { Link } from 'react-router';
import * as actions from '../../actions/job_actions';
import UploadPage from './upload_page';
const renderField = field => (
<div>
<label>{field.input.label}</label>
<input {...field.input}/>
{field.touched && field.error && <div className="error">{field.error}</div>}
</div>);
class JobForm extends Component {
handleFormSubmit(formProps) {
this.props.createJob(formProps); }
render() {
const { handleSubmit } = this.props;
return (
<div>
<form onSubmit={handleSubmit(this.handleFormSubmit.bind(this))}>
<label>Title</label>
<Field name="name" component={renderField} type="text" />
<label>Input File</label>
<Field name="source_file" component={() => {
return (
<div class="input-row">
<input type="text" value={this.props.uploadedFile} />
</div>
)
}} />
<button type="submit" className="btn btn-
primary">Submit</button>
</form>
</div>
);
};
}
const form = reduxForm({ form: 'JobForm' });
function mapStateToProps({uploadedFile}) { return { uploadedFile }; }
export default connect(mapStateToProps, actions)(form(JobForm));
私は私のフィールドを含めるために還元型が欲しいです。レンダリングしようとしましたが、問題を解決しませんでした。フォームはまだそれなしで提出されます。このフィールドを次のように変更しました。 次のようにrender()を配置します。そうでなければ、 "this.props.uploadFile ":const renderFileField = field =>(
更新:フィールドに1回タッチすると動作します。 – baerlein