Estoy tratando de convertir esta demostración en un componente de función. Estoy siguiendo estos pasos y estoy atascado con lo siguiente:
Versión de clase:
this.appointmentForm = connectProps(AppointmentFormContainer, () => { const { editingFormVisible, editingAppointment, data, addedAppointment, isNewAppointment, previousAppointment, } = this.state;Intento de conversión de función:
const [appointmentForm, setappointmentForm] = useState({}); setappointmentForm(connectProps(AppointmentFormContainer, () => { const { editingFormVisible, editingAppointment, data, addedAppointment, isNewAppointment, previousAppointment, };El error con esta versión (probé varias) es: "Error de análisis: 'Declaraciones constantes' requieren un valor de inicialización". se refiere a la const en la línea debajo de setappointmentForm pero deshacerse de él también es incorrecto. Si se necesita todo el código lo pondré pero es bastante largo. ¿Algunas ideas?
No hay un lado derecho en su declaración de const . No es javascript legal hacer solo esto:
const foo;También debe darle un valor, como en
const foo = "bar";Parece que estás tratando de desestructurar un objeto de estado. En los componentes de función, es común dividir su estado en lugar de tenerlo en un solo objeto, por lo que es posible que no desee hacer esta declaración de desestructuración en absoluto, sino hacer estados independientes. Por ejemplo:
const [editingFormVisible, setEditingFormVisible] = useState(); const [editingAppointment, setEditingAppointment] = useState(); const [data, setData] = useState(); // ... etcSi no desea dividir el estado y desea continuar con la tarea de desestructuración, coloque el objeto para desestructurar en el lado derecho.
const { editingFormVisible, editingAppointment, data, addedAppointment, isNewAppointment, previousAppointment, } = someObject; // <------- added