reactjs - Kuinka ratkaisen ongelman NextJS:n useRefin kanssa?


Teen SSG-sivua käyttämällä Nextjsiä. Toin model-viewerin kirjoittamalla tagin, en Next.js:n tagia. Ja haluan aktivoida AR:n automaattisesti, kun käyttäjä tulee tälle sivulle. Joten kutsun activateAR():ia useEffect():ssa käyttäen useRef:iä, mutta virhe tapahtuu useRef:n arvon ollessa 'null'.

  1. Käyttämällä 'next/link', ensimmäinen virhe -> päivitä? se toimii.
  2. Kun käytät tai kirjoitat URL-osoitteen suoraan selaimeen, se toimii ilman virheitä. Vaikka konsoli-ikkunaan tulostuu aluksi null.

Ole hyvä ja valaise kehittäjäpolkuani. 👼

oi tämä sivu on SSG dynaamisella reitityksellä.

const viewer = useRef<any>(null);

useEffect(()=>{
function loadArFile() {
 viewer.current?.activateAR();
}

 viewer && loadArFile();
}
,[])

<Head>
        <title>argateway</title>
        <script
          type="module"
          src="https://unpkg.com/@google/model-viewer/dist/model-viewer.min.js"
        />
</Head>

<model-viewer
        ref={viewer} />