【发布时间】:2014-07-28 01:55:58
【问题描述】:
我有一个用户可以在其中注册帐户的网页。我做了一个简单的指令来检查用户名是否已经被使用,如果是,它应该使表单字段无效。
我的指令调用一个 PHP 网络服务,它检查数据库并返回一个带有该用户名状态的 JSON 对象。
我的指令看起来像这样:
link: function(scope, elm, attrs, c) {
elm.bind('blur', function() {
var result = accountService.uniqueUser(elm.val());
console.log(result);
console.log('A: '+result.usernameIsTaken);
}
});
如你所见,我做了两个console.logs。第一个返回这个:
Resource {$promise: Object, $resolved: false, $get: function, $save: function, $query: function…}
$promise: Object
$resolved: true
usernameIsTaken: false
__proto__: Resource
所以你可以看到它“应该”包含属性userNameIsTaken。但是当第二个console.log 被触发时,它会返回:
A: undefined
为什么我不能这样访问该属性?当第一个 console.log 清楚地表明它应该在那里时,为什么它给我 undefined?
这里有什么我遗漏的吗?
【问题讨论】:
标签: javascript angularjs angularjs-resource