Bonsoir,

J'ai un soucis, je pense avoir bien déclarer mon useEffect et je reçois ce message d'erreur :

Message d'erreur :
Unhandled Runtime Error
TypeError: Cannot read properties of undefined (reading 'fullName')

src\app\shipping\page.js (22:45) @ fullName

20 |
21 | useEffect(() => {
> 22 | setValue('fullName', shippingAddress.fullName)
| ^
23 | setValue('address', shippingAddress.address)
24 | setValue('city', shippingAddress.city)
25 | setValue('postalCode', shippingAddress.postalCode)
Mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
'use client'
 
import CheckoutWizard from "@/components/CheckoutWizard"
import { saveShippingAddress } from "@/redux/slices/cartSlice"
import { useRouter } from "next/navigation"
import { useEffect } from "react"
import { useForm } from "react-hook-form"
import { useDispatch, useSelector } from "react-redux"
 
export default function ShippingAddressPage() {
    const {
        handleSubmit,
        register,
        formState: { errors },
        setValue,
    } = useForm()
    const router = useRouter()
    const dispatch = useDispatch()
    const { shippingAddress } = useSelector((state) => state.cart)
 
    useEffect(() => {
        setValue('fullName', shippingAddress.fullName)
        setValue('address', shippingAddress.address)
        setValue('city', shippingAddress.city)
        setValue('postalCode', shippingAddress.postalCode)
        setValue('country', shippingAddress.country)
    }, [setValue, shippingAddress])
 
    const submitHandler = ({
        fullName,
        address,
        city,
        postalCode,
        country,
    }) => {
        dispatch(
            saveShippingAddress({ fullName, address, city, postalCode, country })
        )
 
        router.push('/payment')
    }