【发布时间】:2020-03-05 21:16:55
【问题描述】:
我正在尝试使用 Nest.js、GraphQL 和 MongoDB 创建简单的应用程序。我想使用 TypeORM 和 TypeGraphql 来生成我的架构并与 localhost 数据库建立连接,但是我无法使用nest start 运行我的服务器,因为我收到了这个错误:
UnhandledPromiseRejectionWarning:错误:无法确定 getArticles 的 GraphQL 输出类型
我不知道为什么会收到此错误。我的班级ArticleEntity 没有任何非主要类型,所以应该没有任何问题。我试图从 @Field() 的 _id 的 ArticleEntity 类的装饰器中删除 () => ID,但它没有帮助
ArticleResolver
@Resolver(() => ArticleEntity)
export class ArticlesResolver {
constructor(
private readonly articlesService: ArticlesService) {}
@Query(() => String)
async hello(): Promise<string> {
return 'Hello world';
}
@Query(() => [ArticleEntity])
async getArticles(): Promise<ArticleEntity[]> {
return await this.articlesService.findAll();
}
}
文章服务
@Injectable()
export class ArticlesService {
constructor(
@InjectRepository(ArticleEntity)
private readonly articleRepository: MongoRepository<ArticleEntity>,
) {}
async findAll(): Promise<ArticleEntity[]> {
return await this.articleRepository.find();
}
}
ArticleEntity
@Entity()
export class ArticleEntity {
@Field(() => ID)
@ObjectIdColumn()
_id: string;
@Field()
@Column()
title: string;
@Field()
@Column()
description: string;
}
ArticleDTO
@InputType()
export class CreateArticleDTO {
@Field()
readonly title: string;
@Field()
readonly description: string;
}
如果您需要任何其他评论
【问题讨论】:
标签: node.js typescript graphql nestjs