第一次在nuxt上。我正在尝试添加客户端库。
在普通的html中我只会将它添加到我的index.html文件中。但我不知道如何在nuxt上做同样的事情。
如何添加?
这是我的配置
module.exports = {
/*
** Headers of the page
*/
head: {
title: 'digglu',
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ hid: 'description', name: 'description', content: 'social media site' },
{ name: 'google-signin-client_id', content:'xxx.apps.googleusercontent.com' }
],
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
]
},
/*
** Customize the progress-bar color
*/
loading: { color: '#3B8070' },
/*
** Build configuration
*/
build: {
/*
** Run ESLINT on save
*/
extend (config, ctx) {
if (ctx.dev && ctx.isClient) {
config.module.rules.push({
enforce: 'pre',
test: /\.(js|vue)$/,
loader: 'eslint-loader',
exclude: /(node_modules)/
})
}
}
}
}
答案 0 :(得分:2)
根据NuxtJS文档:https://nuxtjs.org/guide/plugins
我可以确认这是有效的,但是有些插件在页面的前3次刷新时仍然会出错,然后错误就消失了,我不知道原因。
仅限客户端
某些插件可能仅适用于浏览器,您可以使用ssr: 插件中的false选项仅在客户端运行文件。
示例:
nuxt.config.js:
unknown
插件/ VUE-notifications.js:
module.exports = { plugins: [ { src: '~/plugins/vue-notifications', ssr: false } ] }
如果您只需要服务器的某些库,那么您 可以在webpack使用时将process.server变量设置为true 创建server.bundle.js文件。
答案 1 :(得分:0)
根据Nuxt文档,您可以在nuxt.config.js
中为其使用命名约定或对象语法。
export default {
plugins: [
'~/plugins/foo.client.js', // only in client side
'~/plugins/bar.server.js', // only in server side
'~/plugins/baz.js' // both client & server
]
}
export default {
plugins: [
{ src: '~/plugins/both-sides.js' },
{ src: '~/plugins/client-only.js', mode: 'client' }, // only on client side
{ src: '~/plugins/server-only.js', mode: 'server' } // only on server side
]
}
查看此处:https://nuxtjs.org/guides/directory-structure/plugins#client-or-server-side-only