[英]$http.get gets deseralized JSON but can't assign it to array
我在将数据读入另一个变量时遇到问题,我有这个功能:
var vm = this;
$http.get("/source").success(function(data) {
alert("Horay !!!");
vm.myData = data;
}).error(function() {
alert("Dang It!");
});
然后我有以下内容:
vm.view = {
dataTable: vm.myData,
order: {
classification: 'lastname',
orderby: '+'
}
};
在控制器下使用 angular ,我可以看到vm.myData
的值,我也可以拉它,但我似乎无法将数据分配给我的vm.view.dataTable
。
也许这不是正确的方法?
我用原始 JSON 项目替换了vm.view.dataTable
并且它确实显示了,所以在vm.myData
分配给数据之间有些东西vm.myData
。
$http.get
是异步的。 vm.dataTable
分配给 undefined ,然后才将vm.myData
分配给data
。
应该是
$http.get("/source").success(function(data) {
vm.myData = data;
vm.view.dataTable = data
}).error(...);
success
已被弃用。 它可以替换为
$http.get("/source").then(function(response) {
vm.myData = response.data;
vm.view.dataTable = response.data
}).catch(...);
您是否尝试检查数据对象的外观?
(例如通过将其打印到控制台或其他地方)
根据您的数据源,您期望的数组可能被封装在一个对象中,并且可以在对象层次结构的更深层次上找到它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.