簡體   English   中英

NestJS authGuard 有效

[英]NestJS authGuard dosent works

我正在實現@nestjs/passport ('jwt') 並使用(與說明完全一樣) @UseGuards(AuthGuard())裝飾器,但出現以下異常:

common_1.Optional 不是函數

有誰知道可能是什么問題?

依賴項:

"@nestjs/common": "^5.0.0",

 "@nestjs/core": "^5.0.0", "@nestjs/cqrs": "^5.1.1", "@nestjs/jwt": "^0.2.0", "@nestjs/mongoose": "^5.1.0", "@nestjs/passport": "^5.1.0", "@nestjs/swagger": "^2.4.4", "@nestjs/typeorm": "^5.2.2", "automapper-ts": "^1.9.0", "config": "^2.0.1", "fastify-formbody": "^2.0.0", "lodash": "^4.17.10", "mongodb": "^3.1.6", "mongoose": "^5.2.9", "mysql": "^2.16.0", "nestjs-rmq": "^0.1.3", "nestjs-typegoose": "^5.0.1", "passport": "^0.4.0", "passport-jwt": "^4.0.0", "reflect-metadata": "^0.1.12", "rxjs": "^6.0.0", "typegoose": "^5.4.0", "typeorm": "^0.2.7", "typescript": "^2.6.2",

依賴項已過時。 嘗試運行npm update

也許我不太理解這個問題,但是要使用守衛,您可以提供守衛實例或提供類並讓嵌套創建實例,守衛是**不是函數*

@UseGuards(AuthGuard())應該是: @UseGuards(new AuthGuard())@UseGuards(AuthGuard)

看起來您使用舊的依賴項。

安裝 npm g npm-check

運行 npm-check -u

https://www.npmjs.com/package/npm-check

依賴問題

嘗試這個 :

$ sudo npm install -g npm-check

$ npm-check -u

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM