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

Mengapa Navigator, Tetingkap dan Dokumen Tidak Ditakrifkan dalam Aplikasi Nuxt?

Barbara Streisand
Lepaskan: 2024-11-11 20:35:03
asal
358 orang telah melayarinya

Why Are Navigator, Window, and Document Undefined in Nuxt Applications?

Cara Menyelesaikan Navigator, Tetingkap dan Dokumen yang Tidak Ditakrifkan dalam Aplikasi Nuxt

Pengenalan

Pembangun sering menghadapi ralat di mana navigator, tetingkap dan dokumen kekal tidak ditentukan dalam aplikasi Nuxt. Isu ini timbul apabila cuba mengakses maklumat berkaitan penyemak imbas seperti maklumat UserAgent atau Retina.

Penyelesaian

Untuk menyelesaikan isu ini, bungkus kod JavaScript anda dalam struktur khusus untuk pastikan pelaksanaan yang betul pada bahagian pelanggan sahaja.

Balut Kod dengan Cangkuk Dipasang() dan proses.klien

<script>
import { jsPlumb } from 'jsplumb'; // client-side library only, no SSR support

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

Gunakan Komponen Pelanggan Sahaja

<template>
  <div>
    <p>this will be rendered on both: server + client</p>
    
    <client-only>
      <p>this one will only be rendered on client</p>
    </client-only>
  </div>
</template>
Salin selepas log masuk

Kendalikan Pakej SSR Tidak Disokong

Untuk perpustakaan yang tidak menyokong SSR semasa import, pertimbangkan untuk menggunakan import dinamik atau pemuatan langsung:

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

Petua Tambahan

  • Elakkan membalut komponen dalam jika anda tidak berniat untuk menghalang pemaparan.
  • Import dinamik sesuai untuk perpustakaan yang digunakan kemudian dalam aplikasi.
  • Rujuk dokumentasi rasmi Nuxt untuk panduan lanjut (https://nuxtjs. org/docs/2.x/features/nuxt-components/#the-client-only-component)

Atas ialah kandungan terperinci Mengapa Navigator, Tetingkap dan Dokumen Tidak Ditakrifkan dalam Aplikasi Nuxt?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan