【问题标题】:How can I use service in resolver? [NESTJS]如何在解析器中使用服务? [巢穴]
【发布时间】:2020-06-10 05:40:58
【问题描述】:

我有一个问题,在Resolver 我的Serviceundefined

检查我的代码:

  • 我使用服务的模块:
import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';

import { User } from './user.entity';
import { UsersService } from './users.service';

@Module({
  imports: [TypeOrmModule.forFeature([User])],
  providers: [UsersService],
  exports: [UsersService],
})
export class UsersModule {}
  • 我想重用我的服务的模块:
import { Module } from '@nestjs/common';

import { AuthResolver } from './auth.resolver';
import { UsersModule } from 'src/users/users.module';

@Module({
  imports: [UsersModule],
  providers: [AuthResolver],
})
export class AuthModule {}

  • 我想在哪里使用该服务的解析器:
import { Args, Query, Mutation, Resolver } from '@nestjs/graphql';

import { User, UsersService } from 'src/users';

Resolver(() => User);
export class AuthResolver {
  constructor(private readonly usersService: UsersService) {
    console.log(this.usersService);
  }

  @Query(() => String)
  getUser() {
    return 'first_string';
  }

  @Mutation(() => String)
  signUp(@Args('email') email: string, @Args('password') password: string) {
    return this.usersService.create(email, password);
  }
}

感谢您的帮助)

【问题讨论】:

  • 您是否尝试将UsersService 添加到您的AuthModule 中的提供者?
  • @Enslev 为什么我需要这样做?但无论如何,如果我添加它,问题仍然存在=(

标签: node.js nestjs


【解决方案1】:

答案在这里: https://github.com/nestjs/nest/issues/4163

我只需要在解析器之前签名@

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-24
    • 2020-04-08
    • 2020-12-01
    • 2020-10-26
    • 1970-01-01
    • 2020-03-31
    • 2013-04-23
    • 1970-01-01
    相关资源
    最近更新 更多