簡體   English   中英

nuxt.js 文件未定義,pugin 有問題

[英]nuxt.js document is not defined, problem with pugin

我在我的nuxt.js項目中添加了插件: vue-burger-menu 我有一個錯誤: "document is not defined" 我知道,這個插件僅適用於客戶端。 所以我在 vue 文檔中發現在這里輸入鏈接描述我必須做些什么來修復它。 它僅適用於第一次刷新。 然后我又一次沒有定義文件。

nuxt.config.js :

  build: {
vendor: ['vue-burger-menu'],
 }

 plugins: [
{ src: '~/plugins/vue-burger-menu.js', ssr: false }
],

在我的插件文件夾中添加一個名為"vue-burger-menu.js"

 import Vue from 'vue';
 import VueBurgerMenu from 'vue-burger-menu';

   if (process.browser) {

      Vue.use(VueBurgerMenu);

   }

nav template

 <template lang="pug">
   Slide(right)
        nav.menu_vertical
 </template>

 <script>
 import { Slide } from 'vue-burger-menu'
 export default {
 name: 'Nav',
 components: {
   Slide
 },
}

在此處輸入圖片說明

process.client替換已棄用的process.browser

if (process.client) {
   Vue.use(VueBurgerMenu);
}

Nuxt 正在執行 SSR 並且document僅在browser可用,因此您需要像這樣包裝插件代碼

更改"vue-burger-menu.js"如下

import Vue from 'vue';
import VueBurgerMenu from 'vue-burger-menu';

if (process.browser) {

 Vue.use(VueBurgerMenu);

}

您可以在此處找到詳細文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM