为什么续集智能感知不起作用?

voo*_*A A 3 visual-studio node.js sequelize.js

如何打开 node.js sequelize 的智能感知?

没有模型方法:

续集模型没有智能感知

我可以做什么?

AAY*_*ANE 10

我通过将我的一般要求语法更改为

 const {Sequelize}=require('sequelize');
Run Code Online (Sandbox Code Playgroud)

  • 我认为这可以解决“sequelize”实例上的智能感知问题,但它似乎(也不应该)对“Model”子类的实例产生任何影响。模型不是从“sequelize”实例派生的 (4认同)

Hus*_*lee -1

您没有获得 Intellisense 的原因可能是因为您不是importing通过正确的sequelize 建立的模型。假设您在单独的文件中定义模型,然后导入它们。我建议执行以下操作:

  1. 在您的文件夹中创建一个index.js文件models
  2. 用于sequelize.import导入所有模型并将它们关联起来。
  3. 然后将它们全部从 index.js 以及seqeulize db instance模块中导出Sequelize
  4. require无论您的项目中的哪个位置,您只需要来自 .db 的模型即可/models

模型/index.js

const sequelize = new Sequelize(DB_NAME, DB_USERNAME, DB_PASSWORD)
const db = {
    Sequelize: Sequelize,
    sequelize,
    User: sequelize.import("./user"),
    Message: sequelize.import("./message")
}

Object.keys(db).forEach(model => {
    if ("associate" in db[model]) {
        db[model].associate(db)
    }
})

module.exports = db
Run Code Online (Sandbox Code Playgroud)