字段,以使用momentjs查看用户的年龄是否足够大"/>
在注册系统中创建出生日期字段,以使用momentjs查看用户的年龄是否足够大
我正在尝试使用nodejs和momentjs验证用户是否超过13岁,这是用户注册系统的一部分。我有很多年来表示用户的年龄,并且我希望有一种方法可以检查该值是否大于13,同时仍然遵循表单验证器的格式。我不确定是否有更简单的方法可以做到这一点。
router.post('/register', function(req, res, next) {
var name = req.body.name;
var email = req.body.email;
var password = req.body.password;
var password2 = req.body.password2;
var bday = req.body.bday;
var birthday = moment(bday);
var years = moment().diff(birthday, 'years');
// Form Validator
req.checkBody('name','Name field is required').notEmpty();
req.checkBody('email','Email field is required').notEmpty();
req.checkBody('email','Email is not valid').isEmail();
req.checkBody('password','Password field is required').notEmpty();
req.checkBody('password2','Passwords do not match').equals(req.body.password);
req.checkBody('bday', 'Date of Birth field is required').notEmpty();
req.checkBody('bday', 'Date of Birth must be in valid format').isValid();
req.checkBody('bday', 'User must be older than 13').
// Check Errors
var errors = req.validationErrors();
回答如下:尝试使用弯矩的diff
函数来检查年数是否大于13。
let now = moment();
let compareDate = moment("2017-01-29T17:24:22+0000");
let res = moment(now).diff(compareDate, "years") >= 13;
console.log(res);
<script src="https://momentjs/downloads/moment.js"></script>
更多推荐
在注册系统中创建出生日期字段,以使用momentjs查看用户的年龄是否足够大
发布评论