Saya mencoba menambahkan vue smooth scroll ke proyek nuxt.js saya dan mendapatkan "window is not defined error".

Langkah saya adalah:

yarn add vue2-smooth-scroll

Dalam file vue:

import Vue from 'vue';
import vueSmoothScroll from 'vue2-smooth-scroll';

Vue.use(vueSmoothScroll);
1
hendy0817 8 Januari 2020, 18:57

2 jawaban

Jawaban Terbaik

Saya tidak tahu untuk vue2-smooth-scroll secara spesifik tetapi ketika ketergantungan vue tidak mendukung SSR, Anda dapat menonaktifkannya di nuxt.config.js

Jadi jika Anda memiliki ~/plugins/smooth-scroll.js :

import Vue from 'vue';
import vueSmoothScroll from 'vue2-smooth-scroll';

Vue.use(vueSmoothScroll);

Anda dapat menempatkan ini di nuxt.config.js :

// ...
plugins: [
    { src: '~/plugins/smooth-scroll', ssr: false }
  ],
// ...
3
BTL 8 Januari 2020, 16:35

Jika Anda hanya membutuhkannya di sisi klien, yang masuk akal untuk perpustakaan seperti ini, ada cara alternatif untuk mendaftarkan plugin di nuxt.config.js:

plugins: [
    { src: '~/plugins/smooth-scroll', mode: 'client' }
],
1
jumper85 9 Januari 2020, 08:36