AngularJS-我如何使用在我的控制器中使用Factory GET请求检索的数据
AngularJS - How can I use the data retrieved using a Factory GET request in my controller?
我创建了一个用于获取JSON数据的Angular工厂。我使用$resource
和get
方法从服务器检索这个JSON对象。对象本身包含子对象。
我一直试图在我的控制器中使用我用这个工厂检索到的数据,但当我调用$scope
变量时,我得到了这个的一些变体
无法读取未定义的属性propertyName。
当我将属性记录到控制台时,我可以读取它,所以我不明白它为什么会消失。为了诊断它,我尝试通过引用传递另一个变量。
问题是,我可以通过记录控制台来找到对象及其密钥。问题是,当我尝试使用这些数据时,对象键变成了undefined
。我不知道为什么会发生这种事。
NewOrder.get({"id": $stateParams.loopId, "orderId": $stateParams.orderId}).$promise.then(function(order) {
$scope.myData = order["data"];
console.log("this is an order", order);
});
这是我的工厂
angular.module('myApp')
.factory('NewOrder', function($resource) {
return $resource('/api/loops/:id/orders/:orderId');
});
我发现,如果我创建一个新变量并将其设置为myData
的值,那么键中的对象就会消失。
这适用于
$scope.getOrder = function() {
console.log($scope.myData);
}
=> Object {recruitingLeague: "NAHL", playerPosition: "LeftDefense", playerDOB: Object, playerHeight: Object, playerWeight: Object…}
创建一个新变量并通过引用传递上一个变量的值(用于诊断目的(是不可能的。
$scope.newData = $scope.myData;
$scope.getOrder = function() {
console.log($scope.newData);
}
=> undefined
我不明白为什么我从服务器上检索的对象突然消失了。
服务是异步的,所以时不存在$scope.myData
$scope.newData = $scope.myData;
发生,但时已经存在
$scope.getOrder = function() {
console.log($scope.myData);
}
被调用。
相关文章:
- 有没有一种方法可以防止img get请求使用css或js发生
- CORS-重定向到第二个GET正在接收的页面
- jQuery Ajax GET请求工作不正常
- 如何将PHP get查询转换为Meteor's HTTP.get()
- 返回/从Twit's客户端.get
- AngularJS错误:提供程序必须从$get工厂方法返回值
- 如何在router.get()方法中传递url作为参数
- 使用Javascript/JQuery获取JSON GET数据
- 如何使用php文件中的GET来获取我在.js文件中声明的变量
- Get方法获取csv文件的内容
- 什么'$.get和$.ajax之间的区别是什么
- I'我得到这个.get()在ember中未定义
- Babel编译错误:找不到模块核心js/library/fn/get迭代器
- Datatable get列值只给出前10行
- Angularjs http.get() Cross-Origin 请求被阻止
- Angular js http get返回所有页面
- Get JSON from an url
- 将GET请求(HTML字符串)转换为完整的DOM对象
- regex get id imgur embed?
- AngularJS-我如何使用在我的控制器中使用Factory GET请求检索的数据