Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
主模块中的AngularJS常量_Angularjs_Constants_Angular Resource - Fatal编程技术网

主模块中的AngularJS常量

主模块中的AngularJS常量,angularjs,constants,angular-resource,Angularjs,Constants,Angular Resource,看起来有几种方法可以定义角度常数 在本例中,我们在主模块config.js中定义了两个常量: 我们有一个使用这些常数的工厂。 在第一种情况下,当我们想要使用“简单”常量(URL)时,它就像一个符咒: var app = angular.module('app.user'); app.factory('User', ['URL', '$resource', function (URL, $resource) { return $resource(URL + '/:id', null

看起来有几种方法可以定义角度常数

在本例中,我们在主模块config.js中定义了两个常量:

我们有一个使用这些常数的工厂。 在第一种情况下,当我们想要使用“简单”常量(URL)时,它就像一个符咒:

  var app = angular.module('app.user');
  app.factory('User', ['URL', '$resource', function (URL, $resource) {
    return $resource(URL + '/:id', null, {
                       get: {method: 'GET'}
                     });
  }]);
但是,当我们尝试使用主资源常量时,如下所示:

  var app = angular.module('app.user');
  app.factory('User', ['RESOURCES', '$resource', function (RESOURCES, $resource) {
    return $resource(RESOURCES.USERS + '/:id', null, {
                       get: {method: 'GET'}
                     });
  }]);
我们得到一个未定义的错误


有什么想法吗?

您应该对该代码有错误,请查看块的关闭

app.constant('RESOURCES', (function() {
    var resource = 'http://localhost:8080';
    return {
      USERS: resource + '/users'
    }
  })());

您的常量是传递给module.constant()的函数,而不是该函数返回的值。更糟糕的是,它是一个自调用函数,只需返回一个函数然后调用它就可以了。谢谢!就是这样!抱歉问了一个愚蠢的初学者问题。Np,下次只需检查控制台;)
app.constant('RESOURCES', (function() {
    var resource = 'http://localhost:8080';
    return {
      USERS: resource + '/users'
    }
  })());