toObject
. द्वारा लौटाए गए अपने सादे JavaScript ऑब्जेक्ट को रूपांतरित करने के लिए टाइप की गई वस्तु में, आप class-transformer
. का उपयोग करना चाह सकते हैं पुस्तकालय (पुस्तकालय की अनुशंसा Nest.js
द्वारा की जाती है
सत्यापन उद्देश्यों के लिए)।
चरण 1.
सबसे पहले class-validator
स्थापित करें :
$ npm i --save class-transformer
चरण 2.
एक बार इंस्टॉल हो जाने पर, User
. मानकर वर्ग में निम्नलिखित गुण हैं:
class User {
public id: any;
public email: string;
public password: number;
}
UserWithoutPassward
named नाम से एंटेर क्लास बनाएं और आयात करें Exclude
import { Exclude } from "class-transformer";
class UserWithoutPassword extends User {
@Exclude()
public password: number
}
हम Exclude
. का उपयोग करते हैं class-transformer
को जाने देने के लिए एनोटेशन पता है कि हम password
को बाहर करना चाहते हैं ।
चरण 3.
plainToClass
आयात करें समारोह:
import { plainToClass } from "class-transformer";
और अपने कोड पर वापस जाएं:
async validateUser(email: string, password: string): Promise<UserWithoutPassword | null> {
const user = await this.usersService.findOne({ email });
if (user && await compare(password, user.password))
{
return plainToClass(UserWithoutPassword, user.toObject());
}
return null;
}
plainToClass
विधि निम्नलिखित मापदंडों को स्वीकार करते हुए एक सादे जावास्क्रिप्ट ऑब्जेक्ट को विशिष्ट वर्ग के उदाहरण में बदल देती है:
- तत्काल करने के लिए कक्षा
- सादे वस्तु
लाइब्रेरी के बारे में और संदर्भ
आशा है कि यह मदद करता है।