在流星网络应用程序中,是否同时拥有 SimpleSchema 和 ValidatedMethod 是多余的?尝试重用先前定义的架构时,我收到语法错误。
这就是我的意思:
mycollection.js
export const myCollection = new Mongo.Collection('myCollection');
export const mySchema = new SimpleSchema({
a_field:String;
});
myCollection.attachSchema(mySchema);
现在对于插入方法:
methods.js
import {mySchema, myCollection} from mycollection.js;
export const insertMethod = new ValidatedMethod({
name:'insertMethod',
validate:new SimpleSchema({
mySchema, /*Shows a syntax error: How to avoid repeating the schema?*/
}).validator(),
run(args){
myCollection.insert(args);
}
});
对于这个简单的示例,重写a_field:String
为已验证方法的 Schema 是“可以的”。然而,对于更复杂的示例,这似乎是多余的,如果我想使用一些先前定义的模式并添加一些新字段进行验证,而不必复制整个内容呢?