Files
PIbd-21_Valiulov_I.A._IP/hooks/useMovieForm.js
2025-05-19 23:32:05 +04:00

39 lines
831 B
JavaScript

import { useEffect, useState } from 'react';
export function useMovieForm(initialData = {}, onSubmit) {
const [formData, setFormData] = useState({
title: '',
poster: ''
});
useEffect(() => {
if (initialData) {
setFormData({
title: initialData.title || '',
poster: initialData.poster || ''
});
}
}, [initialData]);
const handleChange = (e) => {
const { name, value } = e.target;
setFormData(prev => ({
...prev,
[name]: value
}));
};
const handleSubmit = (e) => {
e.preventDefault();
onSubmit({
...initialData,
...formData
});
};
return {
formData,
handleChange,
handleSubmit
};
}