Обновил функционал апишки для приложения. И хотел обновить ФЕ сторону тоже
Делал по образу и подобию существующего варианта.
Это форма фидбека. Изначально, для нее был литшь Id и Rating. И попробывал добавить Description
Но, когда отправляю реквест с Description у меня в реквест для Description какой-то объект приходит(я так понимаю это связанно с хуком useState, типу: "bubbles": undefined, "cancelable": undefined, "defaultPrevented": undefined)
Как мне тогда правильно передать значения и почему происмходит такая "реакция"?
ФЕ код:
interface Props {
data: LeaveBookingFeedbackData;
onChangeRating: (a: number) => number;
onChangeDescription: (a: any) => string;
}
class LeaveBookingFeedbackForm extends Component<Props & FormComponentProps> {
static contextType = ThemeContext;
render() {
const theme = this.context;
const { data } = this.props;
return (
<div className="modalBoxRow dark">
<div className="modalBoxCol w12">
<h5>Rate your trip with {data.servicePartnerName}</h5>
<Rate
onChange={this.props.onChangeRating}
allowClear={false}
size="large"
/>
<h5 className={styles.ratingOptional}>
Leave your feedback
</h5>
<Form.Item>
<TextArea
className={styles.feedback}
onChange={this.props.onChangeDescription}
/>
</Form.Item>
</div>
</div>)
А вот страничка, где вызывается этот компонент:
const [rating, setRating] = React.useState(0);
const [description, setDescription ] = React.useState("");
const toApiData = (): LeaveBookingFeedbackRequest => ({
Id: data.Id,
rating: rating,
description: description
});
const changeRatingHandler = (rating: number): any => {
setRating(rating);
};
const changeDescriptionHandler = (description: string): any => {
setDescription(description);
}
<LeaveBookingFeedbackForm
form={form}
onChangeRating={changeRatingHandler}
onChangeDescription={changeDescriptionHandler}
data={data}
/>