4 글 보임 - 1 에서 4 까지 (총 4 중에서)
-
글쓴이글
-
2025년 1월 18일 09:20 #135325
Leo참가자안녕하세요. 타입스크립트로 회원기능 만드는데 이런 에러가 뜹니다. passport.use( new LocalStrategy(async (userid, userpw, cb) => { let result = await db.collection("user").findOne({ username: userid }); if (!result) { return cb(null, false, { message: "IdError" }); } if (result.password == userpw) { return cb(null, result); } else { return cb(null, false, { message: "PwError" }); } }) ); passport.serializeUser((user, done) => { process.nextTick(() => { done(null, { id: user._id, username: user.username }); }); });
에서 server.ts:46:48 - error TS2339: Property 'username' does not exist on type 'User'. server.ts:46:27 - error TS2339: Property '_id' does not exist on type 'User'. 이런 에러가 뜹니다. 어떻게 고치나요? user 콜렉셔에는 이게 들어있습니다. {"_id":{"$oid":"678af3855386c08e615ee395"},"username":"test","password":"aaaa"}
-
이 게시글은
Leo에 의해 5 월, 3 주 전에 수정됐습니다.
2025년 1월 18일 10:25 #135329
codingapple키 마스터passport.serializeUser((user, done) => { user파라미터에 {"_id":어쩌구,"username":어쩌구} 이런 타입을 만들어서 부여해봅시다
2025년 1월 18일 11:02 #135331
Leo참가자원래 에러는 사라졌는데 에러가 하나 더 생겼어요. 44 passport.serializeUser((user: { _id: ObjectId; username: string }, done) => { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 이 호출과 일치하는 오버로드가 없습니다. 오버로드 1/4('(fn: (user: User, done: (err: any, id?: unknown) => void) => void): void')에서 다음 오류가 발생했습니다. '(user: { _id: ObjectId; username: string; }, done: (err: any, id?: unknown) => void) => void' 형식의 인수는 '(user: User, done: (err: any, id?: unknown) => void) => void' 형식의 매개 변수에 할당될 수 없습니다. 'user' 및 'user' 매개 변수의 형식이 호환되지 않습니다. 'User' 형식에 '{ _id: ObjectId; username: string; }' 형식의 _id, username 속성이 없습니다. 오버로드 2/4('(fn: (req: IncomingMessage, user: User, done: (err: any, id?: unknown) => void) => void): void')에서 다음 오류가 발생했습니다. '(user: { _id: ObjectId; username: string; }, done: (err: any, id?: unknown) => void) => void' 형식의 인수는 '(req: IncomingMessage, user: User, done: (err: any, id?: unknown) => void) => void' 형식의 매개 변수에 할당될 수 없습니다. 'user' 및 'req' 매개 변수의 형식이 호환되지 않습니다. 'IncomingMessage' 형식에 '{ _id: ObjectId; username: string; }' 형식의 _id, username 속성이 없습니다.ts(2769) "@types/passport": "^1.0.17", "@types/passport-local": "^1.0.38", devDependencies 에 추가해뒀습니다.
-
이 게시글은
-
글쓴이글
4 글 보임 - 1 에서 4 까지 (총 4 중에서)
- 답변은 로그인 후 가능합니다.