加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

有没有办法在Angularjs定义常量与其他常量?

发布时间:2020-12-17 09:07:17 所属栏目:安全 来源:网络整理
导读:我试图用其他常量定义常量,但似乎它不能做,因为初始常数没有准备好所需的常数取决于需要它。我想确定如果这是不可能的。 目前我有这样的常量: angular.module('mainApp.config',[]) .constant('RESOURCE_USERS_DOMAIN','http://127.0.0.1:8008') .constan
我试图用其他常量定义常量,但似乎它不能做,因为初始常数没有准备好所需的常数取决于需要它。我想确定如果这是不可能的。

目前我有这样的常量:

angular.module('mainApp.config',[])
    .constant('RESOURCE_USERS_DOMAIN','http://127.0.0.1:8008')
    .constant('RESOURCE_USERS_API','http://127.0.0.1:8008/users')
    // Specific routes for API
    .constant('API_BASIC_INFORMATION',RESOURCE_USERS_API + '/api/info')
    .constant('API_SOCIAL_NETWORKS',RESOURCE_USERS_API + '/api/social')
    ;

第二个两个常数是我想要完成的

定义控制器,服务和其他之间的依赖关系的角度方法是依赖注入(DI)。所以如果你有一个依赖于服务B的控制器A,你必须像这样创建它。
var myApp = angular.module("exampleApp",[]);

myApp.controller("aCtrl",function(serviceB){
    //Controller functionally here
});

参见,angular将检查serviceB依赖关系,并查找使用该名称创建的服务。如果你不创建一个,你会得到一个错误。

所以,如果你想创建一个依赖于常量B的常量A,你需要告诉角度A取决于B.但常量不能有依赖性。常数可以返回一个函数,但DI不会用于常量。检查这个小提琴,这样你可以看到DI的工作原理:http://jsfiddle.net/RMj5s/1/

所以回答你的问题,你不能用其他常量定义一个常量。

但你可以这样做:

angular.module('projectApp',[])
  .constant('domain','http://somedomain.com')
  .constant('api','/some/api/info')
  .service('urls',function(domain,api){ this.apiUrl = domain+api;})

  .controller('mainCtrl',function($scope,urls) {

      $scope.url = urls.apiUrl;

  });

检查这个小提琴看到它工作:http://jsfiddle.net/kJ3tT/1/

如果你想了解更多关于DI,看看这个帖子:http://merrickchristensen.com/articles/javascript-dependency-injection.html

我希望这可以回答你的问题。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读