我正在从网址中检索json数据,如果我输出到控制台,数据就在那里..但是当我将它注入控制器时它无法正常工作。我做错了什么?
angular.module('starter.notifications', [])
.factory('Notifications', function($http) {
return {
getAll: function()
{
return $http.get(link).then(function(response){
console.log(response.data);
notifications = response.data;
return notifications;
});
}
}
我的控制器
.controller('NotificationsCtrl', function($scope, $state, Notifications) {
$scope.notifications = Notifications.getAll();
})
$ scope.notifications为null。所以我不明白为什么那些不起作用。
更新: 所以我现在让它传递数据..但我想我不明白如何使用它。
正确/工作代码
getAll: function()
{
notifications = ($http.get(link).then(function(response){ return response.data}));
return notifications;
}
所以现在我的控制器当我做
console.log(notifications);
那么我该如何使用这些数据呢?我想要的数据数据是......但我无法得到它。我以为我可以用 notifications.value但不起作用
答案 0 :(得分:0)
我认为错误是您在工厂发送了两个返回语句。将代码更改为
getAll: function()
{
var temp = $http.get(link).then(function(response){
console.log(response.data);
var notifications = response.data;
return notifications;
});
}
答案 1 :(得分:0)
- (NSArray *)allPropertyNames {
unsigned count;
objc_property_t *properties = class_copyPropertyList([Player class], &count);
NSMutableArray *rv = [NSMutableArray array];
unsigned i;
for (i = 0; i < count; i++)
{
objc_property_t property = properties[i];
NSString *name = [NSString stringWithUTF8String:property_getName(property)];
[rv addObject:name];
}
free(properties);
return rv;
}
需要传递多个参数。最初我只传递响应副数据,状态,标题,配置