AngularJS - 无法在字符串上创建属性方法

时间:2016-03-28 08:08:23

标签: javascript angularjs get gulp angular-services

我发送的正常get请求如下,正常工作:

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

突然间,我开始使用gulp将所有js文件组合在一起后,我得到了这个奇怪的错误:

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

由于应用程序是api,所以我尝试使用邮递员运行请求以查看它是否正常工作。但是,当在某个页面中调用相同的请求时,我会收到此错误。

我检查变量slug这是string并且它是正常发送的,那么这里可能存在的错误是什么?!

1 个答案:

答案 0 :(得分:2)

第二个参数$http.get期望的是具有http请求配置的对象。

看看angular documentation。请参阅快捷方法部分。

  

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

或者更好,更易读的呼叫如下所示:

$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.
});