私はReduxFormで非常に簡単な例を実行しようとしていますが、レンダリング前に2つの関数がありますが、関数の1つがコンポーネントの小道具として別の関数を呼び出しますが、それは未定義です。私はこれをバインドしようとしましたが、それはまだそれを認識しません。あなたが間違った機能を結合しなかったReduxフォームはレンダリングの前にField of Arraysをどのようにレンダリングできますか?
import React, { Component } from 'react'
import { Field, FieldArray, reduxForm } from 'redux-form'
class Page4 extends Component {
constructor(props) {
super(props)
this.simpleField.bind(this)
}
simpleField(field) {
const { meta } = field
return (
<div className='form-group'>
<label>{field.label}</label>
<input
className='form-control'
{...field.input}
/>
</div>
)
}
// This function cannot reach the simpleField component
myFields(field) {
let optiosArray = [
{'label':'Option 1', 'value':'1'},
{'label':'Option 2', 'value':'2'}
]
return(
optionsArray.map((option, key) => {
<Field
label= {option.label}
value= {option.value}
name={option.value}
component={this.simpleField}
/>
})
)
}
render() {
return (
<div>
<FieldArray
name='test'
label='label'
component={this.myFields}
/>
</div>
)
}
}
const validate = (value) => {
const errors = ''
return errors
}
export default reduxForm({
validate,
form: 'Page4'
})(Page4)
インデントがオフです。また、あなたはあなた自身の機能に縛られていると言いましたが、私はあなたがこれをした場所を見ることができません。バインドせずに関数内で 'this 'を使ってインスタンスにアクセスすることはできません。 – trixn
こんにちは。編集と修正:これをバインドすると、私は同じエラーが表示されます。 Uncaught TypeError:未定義のプロパティ 'simpleField'を読み取ることができません –
さて、正確にエラーは何ですか?あなたの質問に正確なテキストを追加してください。 – trixn