Error: Cannot find module 'src/entities/Post'

Error: Cannot find module 'src/entities/Post'

所以我正在使用 type-graph 和 mikro-orm 创建一个 graphQL 服务器 一切都很好,直到我收到这个错误 => Error: Cannot find module 'src/entities/Post' 并且该模块存在,如您在这张图片中所见: folder structure

这就是终端中的错误:error in the terminal

顺便说一句,我正在使用名为 watch: "tsc -w" 的脚本将 typescript 转换为 javascript。

这是我的 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, {})
    }
}
它说模块 ./src/entities/Post 存在时不存在,我真的不知道为什么

解决它的最快方法是使用相对导入 (import { Post } from '../entities/Post') 而不是像您那样使用绝对导入。

另一种满足节点继续使用绝对路径的方法是将以下内容添加到您的 tsconfig 文件中。请注意,您需要为要导入的 'src' 级别的每个目录添加路径。

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

或者您可以使用安装到您的 devDependecies

的包 like this one