Ich habe eine gemeinsame Form mit Ich möchte mit Benutzereingaben umgehen und Daten speichern. Da aber Endpunkt und Benutzertyp unterschiedlich sind, sollte ich eine andere Klasse verwenden, um eine Speicherfunktion zu übergeben. hier habe ich meine speichern Funktion:übergeben Sie eine Funktion mit Parametern innerhalb
const save = async ({ data, props }) => {
const { match: { params: { userkey } } } = props;
const { name, selected } = data;
await rest.post(
'/v1/distributor/role',
{ key: name, permissions: selected },
{
'x-distributor-key': userkey,
},
);
};
export default compose(withProps({ save, getPermissions }))(NewRoles);
mit Userrole aus einer anderen Datei kam und eine Form und Feuersparfunktion erstellen im Formular mit der Einreichung:
render() {
const { save } = this.props;
const { permissions } = this.state;
console.log(this.props);
return (
<div className="col-md-4">
<Form
submit={save({ data: this.state, props: this.props })}
change={this.change}
nameChange={this.nameChange}
permissions={permissions}
/>
</div>
);
}
}
hier passiere ich Funktion speichern zu bilden. und erwarten, wenn submit geklickt Speichern Funktion Feuer mit data
und props
Parameter. aber nach einzuloggen, speichern Funktion nicht vorbei Funktion Stil zu bilden, in, es geht ein Versprechen, so scheint es gefeuert vor:
submit={save({ data: this.state, props: this.props })}
wie kann ich speichern Funktion übergeben mit, dass einreichen Parameter