首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在项目中放置电子邮件验证器的位置?

在项目中放置电子邮件验证器的位置?
EN

Stack Overflow用户
提问于 2016-03-13 15:10:09
回答 1查看 52关注 0票数 0

我在学习节点和Java脚本的第二天。我一直在遵循基本教程,并决定尝试并在我的代码中实现简单的电子邮件验证。

问题是,我不知道该把代码放在哪里-我有一个server.js文件,保存所有的CRUD操作和一个蒙鹅模型,以确保正确的数据被输入。是否有人对使用此模块验证用户输入的电子邮件的最佳方法有任何建议?

代码语言:javascript
复制
 //Email-validation npm module
 var validator = require("email-validator");

 validator.validate("test@email.com");


 //Mongoose model
 var mongoose = require('mongoose');
 var Schema = mongoose.Schema;

 var Tickets = new Schema({

   name: {
     type: String,
     required: true
   },
   email: {
     type: String,
     required: true
   },
   address: {
     type: String,
     required: true
   },
   price: {
     type: Number,
     required: true,
     min: 1,
     max: 100
   }

 });

 module.exports = mongoose.model('Ticket', TicketSchema);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-13 16:00:18

在保存对象之前验证电子邮件。代码应该如下所示:

代码语言:javascript
复制
Tickets.pre('save', function (next) {
var ticket = this;
if (!ticket.isModified('email')) {
    next();
} else {
    var valid = validator.validate(ticket.email);
    if(valid) {
        next();
    } else {
        next(valid);
    }        
}
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35971899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档