【发布时间】:2017-07-05 01:08:55
【问题描述】:
我正在使用 typescript、mean stack、inversify-express-utils 和 inversifyjs 作为我的 IOC 容器来开发应用程序。我在 inversify.config.ts 文件中为将模型添加到容器的条目中的条目收到错误消息。例如,
inversify.config.ts:
container.bind<Model<Document>>(TYPES.Document).to(User).whenTargetNamed("userSchema");
这似乎会导致以下错误: “模型类型的参数不可分配给‘new (...args: any[]) => Model’类型的参数。‘IUserModel’类型不可分配‘Model’类型。‘类型’中缺少属性‘findByid’ IUserModel'。”
igroupmodel.ts:
export interface IUserModel extends IUser, Document
types.ts:
Document: Symbol("Model")
group.js(最后一行):
export let User = mongoose.model<IUserModel>("User", UserSchema);
将猫鼬模型注入容器的正确方法是什么?我一直在寻找一个演示如何使用 inversifyjs 和 mongoose 的示例,但没有找到解决方案。
更新: 当我用 toConstantValue(User) 替换 to(User) 时,我不再收到错误消息。但是,我的日志文件似乎在我的日志文件中显示以下错误:
“错误:没有为 serviceIdentifier 找到匹配的绑定: 型号”
【问题讨论】:
标签: node.js mongodb inversion-of-control inversifyjs