这是我从V4升级到V5后收到的错误消息。
我可以从库中注释掉未知部分,其他所有东西都可以正常运行。
node_modules / sequelize / types / lib / model.d.ts:108:29-错误TS1110: 预期的类型。
108方法:字符串| [string,... unknown []];
这是我典型的模型定义:
interface IAllergenExtend extends Model {
id?: number;
name: string;
description: string;
updatedAt?: string;
createdAt?: string;
}
type AllergenModel = typeof Model &
(new (values?: object, options?: BuildOptions) => IAllergenExtend) & {
associate: (model: IDB) => any;
};
const allergenFactory = (sequalize: Sequelize) => {
const Allergen = (<AllergenModel>sequalize.define('Allergen', {
id: {
allowNull: false,
autoIncrement: true,
primaryKey: true,
type: DataTypes.INTEGER
},
name: {
allowNull: false,
type: DataTypes.TEXT
},
description: {
allowNull: false,
type: DataTypes.TEXT
}
})) as AllergenModel;
Allergen.associate = (model: IDB) => {
Allergen.belongsToMany(model.Dish, {
through: db.AllergenDish,
foreignKey: 'allergenId',
as: 'dishes'
});
};
return Allergen;
};
export { allergenFactory, AllergenModel };
答案 0 :(得分:2)
检查您的打字稿版本。我必须更新到4.27.34才能解决此问题。
答案 1 :(得分:0)
我具有TS版本3.7.2的Node 12.13.0,并且在使用Sequelize 5.21.2时收到此错误