如何修改已经构建的模式

How to modify an already constructed schema

我正在使用定义如下模式的第三方包:

People.schema = new SimpleSchema({
  firstName: {
    type: String,
    optional: false
  }
  //Many other fields defined...
});

我想在不更改第三方包源代码的情况下将其修改为名字为 optional: true

我可以使用 People.schema.pick 获取包含除 firstName 之外的所有字段的模式,然后将其与另一个模式结合使用 firstName 作为可选。但是这种方法需要在 pick 函数中列出模式中的所有字段,这很乏味。

有没有更好的方法来完成这个?

我可以像编辑任何其他对象一样编辑简单模式创建的对象: People.schema._schema.firstName.optional = true.

覆盖字段。