我从一个用nuxt generate构建的nuxt站点得到这个错误
Uncaught ReferenceError: require is not defined
它在以下代码的两个文件中发生:
vendor.js: e.exports=require("vue")
t.exports=require("core-js/library/fn/symbol/iterator"):app.js
当我只用nuxt预览站点时,它运行得很好。
我遇到了this bug,所以我使用了我不太理解的webpack-node-externals。
const nodeExternals =require(‘webpack-节点-外部变量’);
module.exports ={
/页面的页眉/
head:{ },
css:
/ Build configuration /
内部版本:{
extend (config, { isDev, isClient }) { if (isDev && isClient) { /* Run ESLint on save */ config.module.rules.push({ enforce: 'pre', test: /\.(js|vue)$/, loader: 'eslint-loader', exclude: /(node_modules)/ }) } else { // https://github.com/nuxt/nuxt.js/issues/438 config.externals = [ nodeExternals({ whitelist: ['vue-videobg'] })] }}},
模块:[
'nuxt-imagemin',['nuxt-sass-resources-loader', [ '@/node_modules/bootstrap/scss/_functions.scss', '@/node_modules/bootstrap/scss/_variables.scss', '@/node_modules/bootstrap/scss/mixins/_breakpoints.scss', '@/assets/bootstrap4/_variables.scss', '@/assets/variables.scss',]],['bootstrap-vue/nuxt', { css: false, }],['@nuxtjs/google-analytics', { id: 'UA-XXXXXXXXX-6'}],],
插件:[
'plugins/bootstrap-vue.js','plugins/scroll.js',{ ssr: false, src: '~/plugins/startup.js', },{ ssr: false, src: '~/plugins/ksvuescrollmagic.js', },],
}
发布于 2018-08-12 14:03:02
呃,这是一株风滚草。我用isServer修复了它
`if (isServer) { // https://github.com/nuxt/nuxt.js/issues/438 config.externals = [ nodeExternals({ whitelist: ['vue-videobg'] })] }`发布于 2018-09-29 15:12:49
如果您使用Nuxt v.2.0,则不再鼓励使用require。这就是2.0的changelog:Upgrade nuxt.config.js, modules and serverMiddleware to use import/export instead of require
https://stackoverflow.com/questions/51806134
复制相似问题