AngularJS 控制器和工厂中的功能在分离时不工作

AngularJS function in controller and factory not working when separated

angular.module('myFirstApp')// 
//begin controller
.controller('myController',function($scope,$http,personFactory){ //hi im controller i need to call the http service from the factory 
  
  //begin service
  //hi im service i dont want to live in controller.js , i want to live in app.js
  //can we put the service inside a factory which is in app.js file and get called using controller #1
   $http.get('iphone.json').success(function(result){
    $scope.ObjectArray = result;
    
  }).error(function(error){
    alert(error.error + "/" + error.statusCode);
  }); //end
 
  
  //begin
  // hi i am controller #1 , i live in controller.js , i need to call http service in factory and send the value to HTML
   $scope.retrieveRecords = function(){
    var x = personFactory.getData();
    return x 
  }//end
  
  
  // i am controller #2
  $scope.addRecord = function(){
    var x = personFactory.insertData($scope.Name,$scope.Email,$scope.Password,$scope.Mobile,$scope.result);
    $scope.message = "You have successfuly added new data";
    return x + ' ' + $scope.message;
  }
  
  // i am controller #3
  $scope.editRecord = function(){
    var x = personFactory.updateData();
    $scope.message = "You have successfuly updated the data";
  return x + ' ' + $scope.message;
  }


})

//end controller

//begin factory
.factory('personFactory',function(){ //hi im factory i live in app.js , im waiting for http service to live here
  //end factory

我非常需要什么,请用一些聪明的东西回答,我只需要将服务分离到控制器,我还能说什么为什么不发布该死的 blalbalblbllbalbalblablalkjvlwakjvnklwavjnlkwanvwanviwbilawvwavawvas vasvklwanvljabwjkabwv

将工厂从 angular.module('myFirstApp',[]).factory 更改为 angular.module('myFirstApp').factory,即使用 angular.module('myFirstApp') 而不是 angular.module('myFirstApp', [])

return {getData} 服务中的语法不正确

angular.module('myFirstApp',[])
.factory('personFactory',function(){

    function getData(){       
      var x = $http.get('iphone.json').success(function(result){
      $scope.items = result;
      alert(result);
      }).error(function(error){
      alert(error.error + "/" + error.statusCode);
      })    
      return x;
    }
  return {
      getData: getData
   };