打字稿-未处理的拒绝TypeError:boss.SetBelongToClan不是函数

时间:2018-11-28 10:59:18

标签: node.js typescript express sequelize-typescript

我正在使用打字稿,并在一个快速应用程序中进行续集。创建用于使用关联函数的类型安全的接口时遇到麻烦。我的实例界面包含一些属性,就像

SetInstanceBelongTo : Sequelize.BelongsToSetAssociationMixin<ISqInstance,ISqInstance['primaryUniqueId']>;

在App.ts中,我有这个

private CheckConnectPosgrest(){
Database.instance.sequelize.authenticate().then(() =>{
  console.log("New structure Posgrest DB success in connect");
  //
  Database.instance.sequelize.sync().then(()=>{
    console.log("Synced database")
    //
    DataBase.GetSequelizeModelByModelInterface<ClanBossesInstance,ClanBossesAttribute>(ClanBosses).create({
      primaryUniqueId : "119",
        BossType : 1,
        IsOpen : false,
        CurrentHealth : 10000,
        ListDamage : "",
        TimeOpened : "2018-11-28 14:59:12.58",
        TimeClose : "2018-11-28 14:59:12.58"
    }).then(boss =>{
      boss.SetInstanceBelongTo({primaryUniqueId : "111"});
    })
  });
}).catch(error =>{
  console.log("New structure Posgrest DB fail in connect with error " + error);
})
}

运行时出现此错误:

  

未处理的拒绝TypeError:boss.SetBelongToClan不是函数

我遵循此链接中的教程,但将显式接口修改为抽象接口 https://vivacitylabs.com/setup-typescript-sequelize/

任何人都可以帮助我!

非常感谢您

1 个答案:

答案 0 :(得分:0)

如果您确定boss上存在方法,则该变量可能是undefinednull。只需记录boss是什么。