Javascript 在node.js中导入sequelize模型的最佳方法

Javascript 在node.js中导入sequelize模型的最佳方法,javascript,node.js,express,sequelize.js,Javascript,Node.js,Express,Sequelize.js,我正在node.js中使用sequelize orm。我为所有模型制作了模型文件夹,比如userModel.js,在userModel.js中我有一些基于类的函数,比如login和getToken // some code of userModel.js const jwt = require('jsonwebtoken'); module.exports = (sequelize, Sequelize) => { const UserSchema = sequelize.de

我正在node.js中使用sequelize orm。我为所有模型制作了模型文件夹,比如userModel.js,在userModel.js中我有一些基于类的函数,比如login和getToken

// some code of userModel.js 

const jwt = require('jsonwebtoken');
module.exports = (sequelize, Sequelize) => {
    const UserSchema = sequelize.define('User', {
        first_name: {
            type: Sequelize.STRING,
        },
        last_name: {
            type: Sequelize.STRING,
        },
        });

    // generate token
    UserSchema.genToken = (id) => {
        return jwt.sign({ id }, 'test');
    }

    // user login 
    UserSchema.login = function (body) {
        const User = this;
        return User.findOne({
                where: { email: body.email}
            })
            .then((result) => {
                return result;
            })
            .catch((err) => {
                return Promise.reject(err);
            })
    }
    return UserSchema;
}
当我在db.js中导入userModel.js时

const Sequelize = require('sequelize');
const config = {};
var db = {};
const sequelize = new Sequelize(config.database, config.username, config.password, {
    host: config.host,
    dialect: config.dialect,
    operatorsAliases: false,
});

db.sequelize = sequelize;
db.Sequelize = Sequelize;

db.User = sequelize.import('./../models/userModel');

module.exports = db;
所以我的问题是当我使用db变量作为userModel时,比如

数据库用户

我使用VS代码编辑器进行编码。所以现在VS代码向我展示了sequelize模型的所有建议,但它没有展示我的登录和genToken功能

//suggest
db.User.find()
db.User.findOne()

//but not include these
db.User.login()
db.User.genToken()


即使在我使用
db.User.login()
db.User.genToken()
时,它仍能正常工作,但现在我必须反复打开userModel.js才能看到所有函数的名称。如何以更好的方式导入模型?

这些方法是在模型UserModel上定义的
login
genToken
吗?是的,我在UserModel中添加了这些函数login和geToken,请参阅上面的第一个代码部分并查找(UserSchema.login)这些方法是在模型UserModel上定义的
login
genToken
吗?是的,我已经在UserModel中添加了这些函数login和geToken,请参阅上面我的第一个代码部分并查找(UserSchema.login)