Ich habe 2-3 Felder, die andere Formen meiner Anwendung wiederverwendet wird. Also wollte ich diese Felder als Komponente erstellen, damit ich meine anderen Formen wieder verwenden kann. aber redux-form beschwert sich daswie man wiederverwendbare Feldkomponente in redux-Form schafft?
Error: Field must be inside a component decorated with reduxForm()
Irgendwelche Ideen, wie ich es erreichen kann? BTW, ich benutze Material-Ui
EDIT: Bereitstellung einer besseren, z.B. das Material-ui-Symbolleiste betrachten
http://www.material-ui.com/#/components/toolbar
Meine Symbolleiste besteht aus einem SELECT, TextField- Toggle-Taste, die einige Formen können. In meiner App möchte ich diese Symbolleiste in allen Formularen beibehalten, in denen ich Objekte in meiner Anwendung erstelle, daher möchte ich diese Symbolleiste in alle Formulare einschließen. Nach der folgenden Antwort habe ich etwas Dreckiges wie unten versucht.
class BaseBar extends React.Component { // eslint-disable-line react/prefer-stateless-function
constructor(props) {
super(props);
this.state = {
value: 3,
isGlueOpen: false,
};
}
handleChange = (event, index, value) => {
this.setState({value: value});
}
render() {
return (
<div>
<Toolbar>
<ToolbarGroup firstChild={true}>
<DropDownMenu value={this.state.value} onChange={this.handleChange}>
<MenuItem value={1} primaryText="All Broadcasts" />
<MenuItem value={2} primaryText="All Voice" />
<MenuItem value={3} primaryText="All Text" />
<MenuItem value={4} primaryText="Complete Voice" />
<MenuItem value={5} primaryText="Complete Text" />
<MenuItem value={6} primaryText="Active Voice" />
<MenuItem value={7} primaryText="Active Text" />
</DropDownMenu>
</ToolbarGroup>
<ToolbarSeparator />
<ToolbarGroup>
<ToggleButton onChange={this.props.glueToggle}/>
</ToolbarGroup>
</Toolbar>
</div>
);
}
}
export default BaseBar;
und einschließlich der Form wie unter
<form onSubmit={handleSubmit}>
<div>
<Field
name="basebar"
component={BaseBar}
label="project"
/>
</div>
<div>
<Field
name="subject"
component={renderTextField}
label="subject"
/>
</div>
</form>
Aber vorlegen, bin ich die Werte für Betreff-Feld bekommen, aber nicht die BaseBar Werte wird irgendwelche Vorschläge oder Ansatz sehr geschätzt.
Können Sie Ihren aktuellen Code zeigen –
[It] (https://stackoverflow.com/questions/44480120) können Ihnen helfen. –
Ich denke, ich sollte FormSection verwenden, verpasste ich irgendwie zu sehen .. – Maru