2016-03-28 26 views
1
şöyle Ben normal olsun isteği gönderiyorum

mülkiyet yöntemini oluşturamazsınız:angularjs - normal bir şekilde çalışırken hangi dize

service.show = function (slug) { 
      console.log(slug) 
      return $http.get('api/packages/'+slug, slug).success(function(response){ 
       service.package = response.package; 
      }); 
     }; 

Aniden hep birlikte yudum ben bu garip hata alıyorum kullanarak dosyaları js birleştirerek başladıktan sonra:

angular.js:10147 TypeError: Cannot create property 'method' on string 'package-38' 

Uygulama bir api olduğundan, çalışıp çalışmadığını görmek için postacı kullanarak isteği çalıştırmayı denedim. Ancak, aynı istek belirli bir sayfada çağrıldığında, bu hatayı alıyorum.

slug değişkenini string olan ve normal olarak gönderdiğim değişkeni kontrol ediyorum, böylece olası hata ne olabilir ?!

cevap

2

$http.get ikinci parametresi, http isteği yapılandırması olan bir nesne olmasını bekler.

angular documentation'a bakın. Kısayol yöntemleri bölümüne bakın.

$http({ 
    method: 'GET', 
    url: 'api/packages/'+slug 
}).then(function(response){ 
      service.package = response.package; 
     }, function errorCallback(response) { 
// called asynchronously if an error occurs 
// or server returns response with an error status. 
}); 
:

$http.get('/someUrl', config).then(successCallback, errorCallback);

Veya daha iyi ve okunabilir çağrı aşağıda benziyor