如何在 TypeORm 中使用 getter 和 setter

pav*_*vel 6 javascript typeorm

如何在 TypeOrm 中使用 getter 和 setter。

我在这里这里都看到了问题,但没有找到答案

例如离开我的用户实体

export class User {
    @PrimaryGeneratedColumn()
    private id: number;

    @Column()
    @Length(4, 20)
    @IsNotEmpty()
    private name: string;

    @Column()
    @Length(4, 100)
    @IsNotEmpty()
    private password: string;

    public getId(): number {
        return this.id;
    }

    public getPassword(password: string): string {
        return this.password;
    }

    public setPassword(password: string): User {
        this.password = bcrypt.hashSync(password, 8);

        return this;
    }

    public setName(name: string): User {
        this.name = name;

        return this;
    }
}
Run Code Online (Sandbox Code Playgroud)

我使用 orm 版本 0.2.7

Zaw*_*wad 8

@BeforeInsert&@AfterLoad

BeforeInsert https://typeorm.io/#/listeners-and-subscribers/beforeinsert
AfterLoad https://typeorm.io/#/listeners-and-subscribers/afterload

用于@BeforeInsertsetter

@Entity()
export class Post {
    @BeforeInsert()
    updateDates() {
        this.createdDate = new Date()
    }
}
Run Code Online (Sandbox Code Playgroud)

用于@AfterLoadgetter

@Entity()
export class Post {
    @AfterInsert()
    resetCounters() {
        this.counters = 0
    }
}
Run Code Online (Sandbox Code Playgroud)