angularjs检查电子邮件是否已存在

时间:2016-08-27 15:59:09

标签: javascript angularjs

如果电子邮件已经在数据库中,我正在尝试实现提供here的答案以引发错误。这是我当前的指令,它会抛出一个错误,即User未定义。我已经有一个<a href="/path/topik/12/"><i class="angle"></i></a> 文件来定义用户,并将其导入User.js文件。我不知道如何访问链接到数据库的后端api.js文件。

User.js

更新


根据提供的答案更新了代码,我忘了包含用户,但是,我仍然收到错误:
enter image description here

'use strict'; myApp.directive('emailExists', function($timeout, User) { return { restrict: 'AE', require: 'ngModel', link: function(scope, elm, attr, model) { model.$asyncValidators.usernameExists = function(email) { var searchUser = { email: email }; User.findOne(searchUser, function (user) { if(user) then(function(res){+ $timeout(function(){ model.$setValidity('usernameExists', !!res.data); }, 1000); }); }); }; } } }); 是我的User.js中包含的模型,这是导入我localStrategy.js的服务,我以api.js运行的文件与我的grunt一起用于启动我的应用程序。

这是我的User.js文件:

nodemon api.js

1 个答案:

答案 0 :(得分:1)

您必须像注入$timeout

一样将其注入您的指令
myApp.directive('emailExists', function($timeout, User) {
    ...
});