猫鼬虚拟属性是否支持默认值?

时间:2018-09-01 21:17:34

标签: mongoose

在这种情况下,我有几个非模式属性(不持久化到数据库中),我希望在实例化模型时将其设置为默认值。

我没有看到为虚拟属性指定默认值的猫鼬规定方法。我能想到的最好的方法是:

MySchema.virtual('myProperty')
  .set(function(propValue) {
    this._myProperty = propValue;
  })
  .get(function() {
    return this._myProperty || 'MY DEFAULT HERE';
  });

但是,在我正在处理的项目中,我们在对象上调用Object.preventExtensions以帮助防止属性名称输入错误,因此上面的代码将在第一次设置虚拟属性时中断。

在虚拟属性上设置默认值的最佳方法是什么?

0 个答案:

没有答案