টাইপস্ক্রিপ্টে একটি মঙ্গুজ মডেল বাস্তবায়নের চেষ্টা করছেন। গুটিয়ে যাওয়া গুগল কেবল একটি হাইব্রিড পদ্ধতির (জেএস এবং টিএসের সংমিশ্রণ) প্রকাশ করেছে। জেএস ছাড়াই কেউ কীভাবে আমার ক্লাসের প্রয়োগের বিষয়ে আমার বরং নির্মোক্ত পদ্ধতির প্রয়োগ করবে?
ব্যাগেজ ছাড়াই IUserModel এ সক্ষম হতে চান।
import {IUser} from './user.ts';
import {Document, Schema, Model} from 'mongoose';
// mixing in a couple of interfaces
interface IUserDocument extends IUser, Document {}
// mongoose, why oh why '[String]'
// TODO: investigate out why mongoose needs its own data types
let userSchema: Schema = new Schema({
userName : String,
password : String,
firstName : String,
lastName : String,
email : String,
activated : Boolean,
roles : [String]
});
// interface we want to code to?
export interface IUserModel extends Model<IUserDocument> {/* any custom methods here */}
// stumped here
export class User {
constructor() {}
}
User
ক্লাস হতে পারে না কারণ একটি তৈরি করা একটি অ্যাসিঙ্ক অপারেশন। এটি একটি প্রতিশ্রুতি ফিরিয়ে দিতে হবে যাতে আপনাকে কল করতে হবেUser.create({...}).then...
।