2017-07-05 2 views
0

Ich entwickle eine Anwendung mit typescript, mean stack, inversify-express-utils und inversifyjs als meine IOC Container. Ich erhalte einen Fehler für meine Einträge in der Datei inversify.config.ts für den Eintrag, die dem Container ein Modell hinzufügen. Zum Beispielinversify: wie man Modell <Document> an Containerobjekt bindet

inversify.config.ts:

container.bind<Model<Document>>(TYPES.Document).to(User).whenTargetNamed("userSchema"); 

Dies scheint in dem folgenden Fehler führen: „Argument vom Typ Modell ist nicht zuordenbare Parameter vom Typ‚neu (... args: any []) => Model '. Typ' IUserModel 'ist kein zuweisbarer Typ' Model '. Die Eigenschaft' findByid 'fehlt im Typ' IUserModel '. "

igroupmodel.ts:

export interface IUserModel extends IUser, Document 

types.ts:

Document: Symbol("Model") 

group.js (letzte Zeile):

export let User = mongoose.model<IUserModel>("User", UserSchema); 

Was ist der richtige Weg, um eine Mungo zu injizieren Modell in den Container? Ich habe nach einem Beispiel gesucht, das zeigt, wie man mit inversifyjs und mongoose arbeitet und keine Lösung gefunden hat.

Update: Wenn ich (Benutzer) mit toConstantValue (Benutzer) ersetzen, erhalte ich den Fehler nicht mehr. Allerdings scheint meine Log-Datei in meinen Log-Dateien die folgenden Fehler angezeigt werden:

"Error: No matching bindings found for serviceIdentifier: Model"

Antwort

2

Sie können ein Beispiel für Mungo finden + inversify here. Das Beispiel verwendet die onion architecture, aber Sie sollten in der Lage sein, eine andere Architektur zu verwenden, wenn Sie es nicht mögen ...

Verwandte Themen