當初始渲染React時,組件方法會被標題和內容字段調用。然而,雖然Title字段中的額外輸入更改調用renderField方法,但內容字段似乎並未這樣做。這反映在控制檯日誌中,初始組件加載產生2「輸入改變」,並且在標題,「輸入改變」打印中進行其他更改,但在對內容字段進行更改時沒有響應。這是怎麼回事?React Js如何從兩個React Redux字段調用相同的函數?
import React, { Component } from 'react';
import { Field, reduxForm } from 'redux-form';
class PostNew extends Component {
renderField(field) {
console.log('input changed')
return(
<div>
<label>{field.label}</label>
<input
type="text"
{...field.input}
/>
</div>
);
}
render() {
return(
<form>
<Field
label="Title"
name="title"
component={this.renderField}
/>
<Field
label="Content"
name="content"
component={this.renderField}
/>
</form>
)
}
}
export default reduxForm({
form: 'PostsNewForm' // form property is the name of the form
})(PostNew);
我把你的renderField和render方法粘貼到我的React項目中,並且它適用於兩者。不知道爲什麼它不適合你。 – hellojebus
你可以在這個項目中試用嗎? https://github.com/datumsays/React-Redux-Error – MLhacker
這是幾乎相同的代碼。我想知道這是否是一個包問題。 – MLhacker