我能够从DynamoDB中收集数据,但是当我尝试将数据传递给具有AngularJS服务的控制器时,我得到一个未定义的TypeError。
// Query for Replicated Site Using Name
coachdb.query(param, function(err,data) {
if (err) {
console.log(err, err.stack); // an error occurred
} else {
if (data.Items.length > 0) {
//console.log(data); // THIS IS LOGGING DATA
var x = (data);
var y = x.Items[0];
console.log(x.Items[0]); // THIS LOGS DATA
console.log(y); // THIS LOGS THE SAME DATA
this.coach = function() {
return y; // THIS SEEMS TO BE WHERE MY ERROR IS COMMING FROM.
}
if ("firstName" in x.Items[0]) {
var firstName = x.Items[0].firstName.S;
alert(firstName); // THIS PRODUCES AN ALERT THAT WORKS
}
}
}
});
我也可以手动创建一个Object,它实际上等同于我从DynamoDB中提取的内容,而且我的工作正常。
var nestObject = {
"company": { "S" : "ACME"},
"email" : {"S" : "jrwhip@email.com"},
"firstName" : {"S" : "Jared"},
"lastName" : {"S" : "Whipple"},
"phone" : {"S" : "435.494.3333"},
"repNum" : {"N" : 12164}
};
this.coach = function() {
return nestObject;
}
如何从DynamoDB获取数据以通过 表名:ximoRepList
答案 0 :(得分:1)
在您Angular Service
的{{1}}中,我建议您使用couchDb API
。这有助于提供无缝绑定解决方案,以及稍后帮助解决UX问题。
尝试类似的东西。
Angular $q promise chain logic