javascript - Fehler: Modul 'src/entities/Post' kann nicht gefunden werden
also erstelle ich einen GraphQL-Server mit type-graph und mikro-orm. Alles war in Ordnung, bis ich diesen Fehler bekam, der sagt => Fehler: Modul 'src/entities/Post' kann nicht gefunden werden, und dieses Modul existiert, wie du auf diesem Bild sehen kannst: Ordnerstruktur
und so sieht der Fehler im Terminal aus: Fehler im Terminal
Übrigens benutze ich ein Skript namens watch: "tsc -w", um TypeScript in JavaScript zu konvertieren.
Dies ist ein Codebeispiel meines postResolvers:
import { Post } from './src/entities/Post';
import { MyContext } from 'src/types';
import {Ctx, Query, Resolver} from 'type-graphql';
@Resolver()
export class postResolver {
@Query(()=> [Post])
posts(@Ctx() {em}: MyContext) : Promise<Post[]>{
return em.find(Post, {})
}
}Es heißt, dass das Modul ./src/entities/Post nicht existiert, obwohl es existiert, und ich weiß wirklich nicht, warum.
Antwort #1
Der schnellste Weg, es zu lösen, wäre die Verwendung von relativen Importen (import { Post } from '../entities/Post') anstelle von absoluten, wie Sie es getan haben.
Eine andere Möglichkeit, Node dazu zu bringen, weiterhin absolute Pfade zu verwenden, besteht darin, Folgendes zu Ihrer tsconfig-Datei hinzuzufügen. Beachten Sie, dass Sie für jedes Verzeichnis auf der 'src'-Ebene, das Sie importieren möchten, einen Pfad hinzufügen müssen.
"compilerOptions": {
"baseUrl": "src",
"paths": {
"src/*": ["src/*"],
"entities/*": ["src/entities/*"],
"resolvers/*": ["src/resolvers/*"]
...
},
...
}
Oder Sie könnten ein Paket wie dieses verwenden, das in Ihren devDependencies installiert ist
