從工廠返回數據後,我試圖用$ scope.dummyTask賦值。分配後,我可以在回調函數內的控制檯中顯示這些內容。但在功能塊的外面,$ scope.dummyTask未定義,但爲什麼?爲什麼返回後數據不可訪問出廠數據
$scope.dummyTasks=[];
$scope.getTask=function(){
Task.query(function(data){
$scope.dummyTasks=data;
console.log(angular.toJson($scope.dummyTasks));//shows desired data
});
};
$scope.getTask();
console.log(angular.toJson($scope.dummyTasks));// shows undefined
什麼樣的對象是從查詢返回時的'data'?它真的是一個數組嗎? –
JSON格式化數據 [{「id」:1,「task」:「Break Fast」,「task_at」:「2015-10-10 10:20:20」,「user_id」:1,「created_at」:「 -0001-11-30 00:00:00「,」updated_at「:」2015-10-10 08:44:33「,」status「:」完成「,」鬧鐘「:」0「},{」id 「:8,」task「:」與Poly約會「,」task_at「:」2015-10-19 10:10:00「,」user_id「:1,」created_at「:」2015-10-09 20:40 :23「,」updated_at「:」2015-10-19 05:56:05「,」status「:」完成「,」鬧鐘「:」1「},{」id「:9,」task「:」在地上踢足球「,」task_at「:」2015-10-21 17:05:00「,」user_id「:1,」created_at「:」2015-10-09 20:47:07「,」updated_at「 :「2015-10-09 20:47:07」,「status」:「pending」,「alarm」:「1」}] –
所以你需要做:'$ scope.dummTasks = angular.fromJson(data) '反序列化JSON。 –