在ssr模式下构建应用程序时,我注意到vee-validate未包含在构建包中,并且应用程序在服务器上崩溃。
再现:
1)> nuxt build
2)从本地node_modules
删除vee-validate
3)> NODE_ENV=production node server/index.js
4)观察服务器错误:找不到模块'vee-validate'
版本:
nuxt v2.4.2
vee-validate v2.1.7
我有以下配置:
nuxt.config.js:
plugins: [
{ src: '@/plugins/registerPlugins.js' }
],
registerPlugins.js:
import Vue from 'vue'
import VeeValidate from 'vee-validate'
Vue.use(VeeValidate, { inject: false })
我尝试配置nuxt.config,以便将'vee-validate'强制打包,但我找不到办法。
我还尝试将vee-validate直接导入页面组件-相同的结果。
有什么想法可以解决这个问题吗?
或者至少如何告诉webpack(通过nuxt.config)包括vee-validate模块?
答案 0 :(得分:1)
这是完全正常的行为。软件包中的第三方节点模块都不会包含在buuild中,因此您需要在安装中安装它们。
您可以尝试使用独立模式,该模式将使所有节点模块都集成到您的构建中