Entonces tengo esta página dinámica en el próximo js
import { useRouter } from 'next/router' import { WEB_RELATED, PC_EXES } from '../../components/Data'; export default function title() { const router = useRouter(); const { index } = router.query; console.log(index.length) return ( <div> </div> ) }en esa instrucción dada.length obtengo el error -> dada no definida, traté de hacer lo mismo con el índice directamente pero me dio el mismo problema. Quiero obtener dos cadenas del parámetro de índice, ¿cómo hago eso?
Debe probar si el índice se define primero. Aquí hay un ejemplo de cómo lidiar con la consulta del enrutador:
PD: código disponible debajo de las imágenes
PSPS: consulte la documentación https://nextjs.org/docs/routing/dynamic-routes
// pages/testStackOverflow/[index].js import React, {useEffect} from 'react'; import {useRouter} from 'next/router' const Title = () => { const router = useRouter(); const {index} = router.query // Don't use console.log directly below index because his value can be changed useEffect(() => { console.log('value', index, 'length : ', index?.length); // You can use if statement /* if(index) { doSomethingHere }*/ // Triggering router change with useEffect }, [index]) return ( <div> {index} </div> ) }; export default Title;Espero poder ayudarte.