Azure移动服务- table.read().完成(函数(结果))返回未定义的值
Azure Mobile Services - table.read().done(function (results)) returning undefined values
编辑:该函数是异步的,因此console.log在数据返回之前被触发。现在我将把我的逻辑放在这个.done()
函数中。
我试图将结果数组传递给一个全局变量,但该变量在结果函数之外未定义。
然而,它是我需要在函数内的数组。
我需要在结果函数之外有一个对象数组,因为我不能在这个函数内调试,并且有很多代码要写
代码
$scope.syncContacts = function () {
var table = AzureService.getTable('contact');
var contactList = [];
table.read().done(function (results) {
contactList = results;
for (var i = 0; i < results.length; i++) {
console.log("Contact Object:", results[i]);
}
console.log('contact list is : ', contactList);
});
console.log("OUTSIDE FUNCTION LIST", contactList);
};
我一直在阅读,看到一个函数response.send(200, results)
在azure表中使用,但不知道它的用途或如果我需要它
contactList
有一个变量作用域问题,你打印外部变量,并在承诺填充内创建一个新的。
var table = AzureService.getTable('contact');
table.read().done(function (results) {
$scope.contactList = results;
for (var i = 0; i < results.length; i++) {
console.log("Contact Object:", results[i]);
}
console.log('contact list is : ',$scope.contactList);
});
这是AzureService JavaScript的官方文档:添加移动服务到现有的应用
编辑:由于承诺解析,contactList
未定义打印。done
方法将花费一些时间从服务器获取数据。但是,如果您在done
中打印它,它将显示结果,如预期的那样。您应该将此值放入$scope
变量中,然后在read从服务器返回数据后使用它:
相关文章:
- JSONP请求返回结果,但也触发error_callback
- async问题,JS Promise无法返回结果,但可以使用console.log
- Meteor js-控制台显示'未定义'即使返回结果
- 正在等待HTTP调用从函数返回结果
- 使用函数for循环遍历对象以更改值,然后返回结果
- 迭代 JSON 文件并且未在 Javascript 中正确返回结果
- Javascript 函数不返回结果
- 用逗号分隔返回结果中的对象
- 需要呈现MongoDB查询返回结果的特定索引/位置
- HTML5 文件阅读器如何返回结果
- javascript循环遍历列表项,并在数组中返回结果
- 使用jquery UI next按钮提交输入字段值,php将返回结果
- 在angularjs工厂中,如何在函数解析后返回结果
- 我在jQuery中的Rock Paper Scissors程序只在平局时返回结果
- 如何使用ajax调用php并返回结果
- 添加第二维度的Javascript未返回结果
- Node.js没有返回结果
- jquery裁剪图像selction未返回结果
- 如何在phonegap javascript函数中返回结果
- 如果文本筛选器在ng重复中未返回结果,则显示消息