【问题标题】:Cannot find module 'passport' or its corresponding type declarations找不到模块“护照”或其相应的类型声明
【发布时间】:2020-10-19 19:24:16
【问题描述】:

我正在使用@nestjs/passport。运行npm run start:dev后报错,但是编辑器没有报错

node_modules/@nestjs/passport/dist/passport/passport.serializer.d.ts:1:27 - error TS2307: Cannot find module 'passport' or its corresponding type declarations.

1 import * as passport from 'passport';

输入代码:

import { PassportModule } from '@nestjs/passport';
import { TypeOrmModule } from '@nestjs/typeorm';
import { Module } from '@nestjs/common';
import { AuthController } from './auth.controller';
import { AuthService } from './auth.service';
import { UserRepository } from './user.repository';
import { JwtModule } from '@nestjs/jwt';


@Module({
  imports:[
    PassportModule.register({defaultStrategy:'jwt'}),
    JwtModule.register({
      secret: 'topSecret51',
      signOptions:{
        expiresIn:3600,
      },
    }),
    TypeOrmModule.forFeature([UserRepository]),
  ],
  controllers: [AuthController],
  providers: [AuthService],
})
export class AuthModule {}

知道可能是什么问题吗?

【问题讨论】:

标签: typescript jwt nestjs nestjs-passport nestjs-jwt


【解决方案1】:

遇到同样的问题,我通过运行$ npm i --save @nestjs/passport passport 解决了。

【讨论】:

    【解决方案2】:

    由于节点版本而发生此错误。如果你有这个,更新节点版本并使用npm i --save @nestjs/passport passport重新安装护照模块

    【讨论】:

    • --save 是做什么的? npm install 不适用于此软件包是否有原因?
    【解决方案3】:

    我遇到了同样的问题。但我进行了重建,一切正常。 删除了dist 文件夹,然后重新开始

    rm -r dist
    npm run start:dev
    

    【讨论】:

    • 这对我有用,确保你还安装了下一个依赖项:@nestjs/passportpassportpassport-jwt
    【解决方案4】:

    同样的问题。

    npm i @types/passport --save解决了它

    【讨论】:

      猜你喜欢
      • 2022-12-16
      • 2023-01-31
      • 2021-09-21
      • 2020-12-23
      • 2020-08-16
      • 2021-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多