如何修改已经构建的模式
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
.
覆盖字段。
我正在使用定义如下模式的第三方包:
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
.
覆盖字段。