Rumah > hujung hadapan web > tutorial js > Mengapa Navigator, Tetingkap dan Dokumen Tidak Ditakrifkan dalam Apl Nuxt Saya?

Mengapa Navigator, Tetingkap dan Dokumen Tidak Ditakrifkan dalam Apl Nuxt Saya?

DDD
Lepaskan: 2024-11-11 15:16:02
asal
646 orang telah melayarinya

Why Are Navigator, Window, and Document Undefined in My Nuxt App?

Cara Menangani Ralat yang tidak ditentukan pada Navigator/Tetingkap/Dokumen dalam Nuxt

Apabila cuba mendapatkan semula maklumat ejen pengguna atau retina dalam aplikasi Nuxt , ralat mungkin timbul yang menunjukkan bahawa pelayar, tetingkap atau dokumen tidak ditentukan. Ini berlaku disebabkan oleh kod JavaScript yang dilaksanakan semasa pemaparan sisi pelayan (SSR), yang tidak mempunyai akses kepada objek khusus penyemak imbas seperti tetingkap atau pelayar.

Penyelesaian

Kepada selesaikan isu ini, bungkus kod JS logik anda dalam binaan berikut:

<script>
  import { jsPlumb } from 'jsplumb'

  export default {
    mounted() {
      if (process.client) {
        // Your JS code here, like: jsPlumb.ready(function () {})
      }
    },
  }
</script>
Salin selepas log masuk

Ini memastikan bahawa anda kod hanya dilaksanakan pada bahagian klien, di mana objek ini tersedia. Selain itu, pertimbangkan untuk menggunakan komponen untuk memaparkan bahagian tertentu semata-mata pada klien.

<template>
  <div>
    <p>Rendered on both: server + client</p>
    
    <client-only>
      <p>Rendered only on client</p>
    </client-only>
  </div>
</template>
Salin selepas log masuk

Petua Tambahan

  • Semak dokumentasi perpustakaan untuk sokongan SSR. Jika tidak disokong, gunakan import dinamik atau import langsung.
  • Contohnya:

    export default {
    components: {
      [process.client && 'VueEditor']: () => import('vue2-editor'),
    }
    }
    Salin selepas log masuk

    Dengan menggunakan teknik ini, anda boleh mengakses objek navigator, tetingkap dan dokumen dalam aplikasi Nuxt dan selesaikan ralat tidak jelas yang dihadapi.

Atas ialah kandungan terperinci Mengapa Navigator, Tetingkap dan Dokumen Tidak Ditakrifkan dalam Apl Nuxt Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan