Nextjs/Mongoose模型在Nextjs站点的某些(但不是其他)页面上未定义

Nextjs/Mongoose模型在Nextjs站点的某些(但不是其他)页面上未定义,mongoose,next.js,Mongoose,Next.js,我对Next.js/mongoose有一个奇怪的问题,我需要一些帮助来排除故障。当我将mongoose模型导入到Next.js站点的页面中,以便在getStaticProps函数中使用时,例如pages/index.js或pages/dedictions/index.js或pages/dedictions/[id].js工作正常。但是,出于某种原因,现在如果我将所述模型(或另一个不同的模型)导入其他页面集,例如pages/vendors/index.js或pages/vendors[id].js

我对Next.js/mongoose有一个奇怪的问题,我需要一些帮助来排除故障。当我将mongoose模型导入到Next.js站点的页面中,以便在getStaticProps函数中使用时,例如
pages/index.js
pages/dedictions/index.js
pages/dedictions/[id].js
工作正常。但是,出于某种原因,现在如果我将所述模型(或另一个不同的模型)导入其他页面集,例如
pages/vendors/index.js
pages/vendors[id].js
pages/whatever/whatever.js
我会得到以下错误(在其他任何页面上都没有收到,我已经检查了导入路径是否正确):

TypeError:mongoose\uuuu网页包\u导入的模块\u 2\uuuuuu默认值()。模型未定义

有人能帮我排除到底是什么原因导致它突然损坏吗?例如,这里有两个有问题的模型(缩小以节省空间),它们在上面提到的页面中运行良好,但现在似乎在其他地方都损坏了:

const testimonySchema = new mongoose.Schema({
 //stuff
});

export default mongoose.models.Testimony || mongoose.model('Testimony', testimonySchema);


更新已修复!显然,如果在Next.js重新编译代码之前数据获取程序中未使用模型,wepback会立即抛出此错误。例如,如果您使用的是getStaticProps,但未使用模型,例如const data=wait Vendor.find({});例如,它将抛出错误。添加该错误,它就可以正常工作。我想我之前从未遇到过该错误!
import mongoose from 'mongoose';
import bcrypt from 'bcryptjs';

const vendorSchema = new mongoose.Schema({
 //stuff
});

 //some model functions

export default mongoose.models.Vendor || mongoose.model('Vendor', vendorSchema);