我正在使用mongoose
和express.js
。据我所知,这是在app.js
中注册模型的推荐方式(使用import
连接到数据库后,mongoose
的注册方式):
mongoose.connect('mongodb://mongo:27017/drip')
import './models/MyModel'
此问题是由于eslint
应该始终位于文件顶部,导致我的import
验证失败:
error Import in body of module; reorder to top import/first
当然,将import
移动到mongoose.connect
中断之前:
MissingSchemaError: Schema hasn't been registered for model "Target".
使用mongoose
JavaScript标准时,推荐使用eslint
的干净方法是什么?
答案 0 :(得分:0)
我们在这里想要做的是在模型上注册括号,并在尝试连接前确保在文件顶部需要express和mongoose。这是一个有助于指导您的通用示例:
const express = require('express');
const mongoose = require('mongoose');
const { MyModel } = require('./models/mymodel');
mongoose.Promise = global.Promise;
mongoose.connect((process.env.MONGODB_URI || 'mongodb://localhost:27017/collectionname'));
const port = (process.env.PORT || 5000);