メールの形式は次のようになります:[メールアドレス]。
どれが一番いい方法でしょうか?
登録用のコンポーネントがあり、次のようなフィールドがあります。
<mat-form-field>
<input matInput placeholder="Email" name="email" [(ngModel)]="email" required>
</mat-form-field>
私の usersRouter には登録用の関数があります:
router.post('/users/register', (req, res) => {
...
const user = new User({
...
email: req.body.email,
...
});
...
});
また、私はmongoを使用しており、UserSchemaには電子メール用に次のものがあります。
email: {
type: String,
required: true
}
ありがとう!
ベストアンサー1
電子メール検証モジュールを使用できます:
var validator = require("email-validator");
validator.validate("[email protected]");
または、依存関係が必要ない場合:
var emailRegex = /^[-!#$%&'*+\/0-9=?A-Z^_a-z{|}~](\.?[-!#$%&'*+\/0-9=?A-Z^_a-z`{|}~])*@[a-zA-Z0-9](-*\.?[a-zA-Z0-9])*\.[a-zA-Z](-?[a-zA-Z0-9])+$/;
function isEmailValid(email) {
if (!email)
return false;
if(email.length>254)
return false;
var valid = emailRegex.test(email);
if(!valid)
return false;
// Further checking of some things regex can't handle
var parts = email.split("@");
if(parts[0].length>64)
return false;
var domainParts = parts[1].split(".");
if(domainParts.some(function(part) { return part.length>63; }))
return false;
return true;
}
ソース:
https://www.npmjs.com/package/email-validator
https://github.com/manishsaraan/email-validator/blob/master/index.js