我认为这是一个简单的问题。我使用简单的模式,我想要一个 minDate 和 maxDate。文档在验证部分讨论了它,但我不确定如何在模式本身中定义它。任何帮助都会很棒。谢谢
路径:Schema.js
startDate: {
type: Date,
optional: true,
autoform: {
type: "bootstrap-datepicker"
}
},
endDate: {
type: Date,
optional: true,
autoform: {
type: "bootstrap-datepicker"
}
}
最佳答案
我在 simple-schema repo 中发现了一个问题就到此为止了。以下是使用静态最小/最大日期时您的代码的外观:
startDate: {
type: Date,
optional: true,
min: new Date(2016, 1, 1),
autoform: {
type: "bootstrap-datepicker"
}
},
endDate: {
type: Date,
optional: true,
max: new Date(2018, 1, 1),
autoform: {
type: "bootstrap-datepicker"
}
}
如果您想让这些日期动态化,您可以使用自定义
验证器。这是a link到相关文档。您的开始日期将如下所示:
startDate: {
type: Date,
optional: true,
custom: function() {
var myMinDate = new Date(); //today
if(myMinDate > this.value) {
return 'minDate'; //Error string according to the docs.
} else {
return true;
}
},
autoform: {
type: "bootstrap-datepicker"
}
},
endDate: {
type: Date,
optional: true,
custom: function() {
var myMaxDate = new Date(2018, 11, 31); //Last day of 2018
if(myMaxDate < this.value) {
return 'maxDate'; //Error string according to the docs.
} else {
return true;
}
},
autoform: {
type: "bootstrap-datepicker"
}
}
关于meteor - 简单模式 minDate maxDate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35215223/