NuxtJS:仅外部客户端 plugin/component 导致页面刷新错误
NuxtJS: external client-side only plugin/component causes error on page refresh
我使用 npm install 来包含一个名为 vue-gallery 的仅客户端插件,并按照 Nuxtjs 文档中所述的说明将其加载为仅客户端插件。该插件工作正常,但有一个例外:如果我在任何导入该插件的路由上按 f5,Nuxt 会抛出一个 'Invalid or unexpected token' 错误。这是当您将插件定义为客户端和服务器端时总是抛出的错误。如果您直接在浏览器中键入 URL,也会发生同样的情况。但是,当您使用应用程序链接导航到该页面时,它不会发生。
注意这只是一个外部组件类型的插件,不是ES6插件。
vue-gallery.js
import Vue from 'vue'
import VueGallery from 'vue-gallery'
Vue.component('vue-gallery', VueGallery)
nuxt.config.js
plugins: [
'~/plugins/axios',
{ src: '~/plugins/vue-gallery.js', mode: 'client' }
],
在我的页面组件中,只需执行 import VueGallery from 'vue-gallery'
要解决这个问题吗?
In my pages component simply doing import VueGallery from 'vue-gallery'
就是这个原因。如果你在你的页面中导入它,它将被导入到 SSR 上,所以如果它不兼容 SSR,它就会出错。由于您将其作为组件全局添加到您的插件中,因此您不需要将其导入您的页面
我使用 npm install 来包含一个名为 vue-gallery 的仅客户端插件,并按照 Nuxtjs 文档中所述的说明将其加载为仅客户端插件。该插件工作正常,但有一个例外:如果我在任何导入该插件的路由上按 f5,Nuxt 会抛出一个 'Invalid or unexpected token' 错误。这是当您将插件定义为客户端和服务器端时总是抛出的错误。如果您直接在浏览器中键入 URL,也会发生同样的情况。但是,当您使用应用程序链接导航到该页面时,它不会发生。
注意这只是一个外部组件类型的插件,不是ES6插件。
vue-gallery.js
import Vue from 'vue'
import VueGallery from 'vue-gallery'
Vue.component('vue-gallery', VueGallery)
nuxt.config.js
plugins: [
'~/plugins/axios',
{ src: '~/plugins/vue-gallery.js', mode: 'client' }
],
在我的页面组件中,只需执行 import VueGallery from 'vue-gallery'
要解决这个问题吗?
In my pages component simply doing import VueGallery from 'vue-gallery'
就是这个原因。如果你在你的页面中导入它,它将被导入到 SSR 上,所以如果它不兼容 SSR,它就会出错。由于您将其作为组件全局添加到您的插件中,因此您不需要将其导入您的页面