首页 > 解决方案 > 如何将辅助方法添加到 typeORM 实体?

问题描述

我正在尝试向我的一个实体类添加一个辅助方法,但我收到一条错误消息。我的实体:

import { Entity, PrimaryColumn, Column } from 'typeorm'

@Entity('accounts')
class Account {
  @PrimaryColumn()
  username: string

  @Column({ name: 'firstname' })
  firstName: string

  @Column({ name: 'lastname' })
  lastName: string

  public fullName() : string {
    return `${this.firstName} ${this.lastName}`
  }
}

当我尝试打电话时,account.fullName()我收到以下错误消息:

"account.fullName" is not a function

我怎么了?

标签: typescripttypeorm

解决方案


添加get关键字并使用属性语法调用它。

import { Entity, PrimaryColumn, Column } from 'typeorm'

@Entity('accounts')
class Account {
  @PrimaryColumn()
  username: string

  @Column({ name: 'firstname' })
  firstName: string

  @Column({ name: 'lastname' })
  lastName: string

  public get fullName() : string {
    return `${this.firstName} ${this.lastName}`
  }
}

推荐阅读