[英]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.