@lucky4

Как впихнуть в компонент новое string поле?

Обновил функционал апишки для приложения. И хотел обновить ФЕ сторону тоже
Делал по образу и подобию существующего варианта.
Это форма фидбека. Изначально, для нее был литшь 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}
						/>
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы