首页 > 解决方案 > Typescript - 未处理的拒绝 TypeError:boss.SetBelongToClan 不是函数

问题描述

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

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);
})
}

运行时出现此错误:

未处理的拒绝类型错误:boss.SetBelongToClan 不是函数

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

任何人都可以帮助我,拜托!

太感谢了

标签: node.jstypescriptexpresssequelize-typescript

解决方案


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


推荐阅读