2015-07-12 1 views
0

Привет, я немного смущен чем-то, когда я отправляю свою форму, данные не отправляются на сервер, я проверил мою консоль несколько раз, и я не могу понять, что происходит, это мой контроллер:

angular.module('app').controller('InstCtrl', ['$http', '$scope', '$state', 'InstService', function($http, $scope, $state, InstService) { 

    var parameters = { 
     name: $scope.name, 
     description: $scope.description, 
     email: $scope.email, 
     phone: $scope.phone, 
     website: $scope.website, 
     isActive: $scope.isActive 
    }; 

    $scope.addInstitution = function(parameters) { 

     InstService.add(parameters); 
     console.log(parameters); 

    }; 

}]); 

Это услуга:

angular.module('app').factory('InstService', function ($http) { 

    var InstService = {}; 

    InstService.add = function(parameters) { 

     return $http 
      .post('/api/v1/institutions/', parameters) 

    }; 

    return InstService; 
}); 

Я использую AngularJS на переднем конце и Laravel 5 на моем сервере.

console.log возвращает неопределенными и мой $ http.post всегда пусто, как ни данных быть размещены на сервере.

+0

, что это такое, что вы видите в консоли, что вы не понимаете? – Claies

+0

Извините, отредактировал мое сообщение, чтобы включить это, спасибо. – user3718908

ответ

1

Где вы на самом деле называете метод addInstitution? Предполагая, что он набирается нажатием кнопки в вашем html. Если так, я не думаю, что это сработает. Вы определяете объект параметров до того, как будут заданы переменные области.

Try переместив определение параметров в addInstitution:

$scope.addInstitution = function() { 
    var parameters = { 
     name: $scope.name, 
     description: $scope.description, 
     email: $scope.email, 
     phone: $scope.phone, 
     website: $scope.website, 
     isActive: $scope.isActive 
    }; 

    console.log(parameters); 

    InstService.add(parameters); 
}; 
+0

Благодарим за помощь. :) – user3718908

+0

np, удачи и получайте удовольствие. – lostintranslation