最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Error: Cannot find module 'srcentitiesPost' - Stack Overflow

programmeradmin0浏览0评论

so i am creating a graphQL server using type-graph and mikro-orm everything was fine till i got this error that says => Error: Cannot find module 'src/entities/Post' and that module exists as you can see in this picture: folder structure

and this is what the error looks like int the terminal: error in the terminal

by the way i am using script called watch: "tsc -w" to convert typescript into javascript.

this is a code example of my postResolver:

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, {})
    }
}

so i am creating a graphQL server using type-graph and mikro-orm everything was fine till i got this error that says => Error: Cannot find module 'src/entities/Post' and that module exists as you can see in this picture: folder structure

and this is what the error looks like int the terminal: error in the terminal

by the way i am using script called watch: "tsc -w" to convert typescript into javascript.

this is a code example of my postResolver:

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, {})
    }
}
it says that the module ./src/entities/Post does not exist while it exists and i really don't know why

Share Improve this question edited Mar 14, 2022 at 8:18 John asked Mar 13, 2022 at 19:31 JohnJohn 1751 gold badge3 silver badges9 bronze badges 1
  • Please do not post pictures of code or error messages etc. Read e.g. this answer on Meta for reasons why. You'll probably have a better chance of getting an answer if you also read the how do I ask a good question article and edit your question. – Emma Commented Mar 13, 2022 at 19:43
Add a ment  | 

1 Answer 1

Reset to default 7

Fastest way to solve it would be using relative imports (import { Post } from '../entities/Post') instead of absolute like you did.

Another way to satisfy node to keep using absolute paths, is adding the following to your tsconfig file. Note that you will need to add a path for every directory at 'src' level, you want to import.

"pilerOptions": {
  "baseUrl": "src",
  "paths": {
     "src/*": ["src/*"],
     "entities/*": ["src/entities/*"],
     "resolvers/*": ["src/resolvers/*"]
     ...
  },
  ...
}

Or you could use a package like this one installed to your devDependecies

发布评论

评论列表(0)

  1. 暂无评论