如何根据 typegoose 属性中的某些条件返回默认值?

Posted

技术标签:

【中文标题】如何根据 typegoose 属性中的某些条件返回默认值?【英文标题】:How to return default value based on some condition in typegoose property? 【发布时间】:2020-06-11 20:16:12 【问题描述】:

我在打字稿模型类中有以下类型

 @ApiModelPropertyOptional()
  @prop(
    _id: false,
    default: condition ? default_value : empty_value),
  )
  complexType?: ComplexType;

当我尝试根据某些条件返回 default 值时,它没有按预期工作。您能在这里提出解决方案吗?

你能给我一个例子来根据某些条件返回默认值吗?

【问题讨论】:

【参考方案1】:

你可以使用function as the default,mongoose会自动执行,然后返回值会被使用

  @prop(
    _id: false,
    default: () => condition ? default_value : empty_value,
  )

如果条件基于模型上的某个其他值,您可以使用this 访问所有属性(这要求该函数不是箭头函数)

【讨论】:

以上是关于如何根据 typegoose 属性中的某些条件返回默认值?的主要内容,如果未能解决你的问题,请参考以下文章

根据某些条件与另一个表连接后设置 IQueryable<T> 中的属性值

Typegoose 和 NestJS:类型上不存在属性“保存”

如何根据 ggplot2 中的某些条件删除标签?

Typescript typegoose getModelForClass 返回类型

如何根据 Oracle SQL 中的某些条件将列拆分为 2?

如何根据 Oracle 表格 6i 中的某些条件在两个 LOV 之间进行选择