Javascript 如何将变量传递给AngularJs配置
我使用并需要在模块Javascript 如何将变量传递给AngularJs配置,javascript,angularjs,Javascript,Angularjs,我使用并需要在模块config部分中配置api_键(问题类似于) 我的问题是关于配置AngularJs模块的 这是: var-app=angular.module('myapp',[]) /* //这里????? //我尝试从HTML(服务器端)传递一个值 .config(函数($window){ log($window.memKey); }) */ .controller('MainCtrl',['$scope','$window',函数($scope,$window){ $scope.
config
部分中配置api_键
(问题类似于)
我的问题是关于配置AngularJs模块的
这是:
var-app=angular.module('myapp',[])
/*
//这里?????
//我尝试从HTML(服务器端)传递一个值
.config(函数($window){
log($window.memKey);
})
*/
.controller('MainCtrl',['$scope','$window',函数($scope,$window){
$scope.name=$window.memName;
$scope.city=$window.memCity;
$scope.getMember=函数(id){
console.log(id);
};
}]);代码>
变量memKey='bb7de28f-0f89-4f14-8575-D4940203ACEC7';
var memName='John';
var memCity=‘纽约’;
成员名称:{{name}}
成员城市:{{城市}
根据您的声明方式,您的memKey位于可访问范围内
照办
app.config(function(){
console.log(memKey);
})
请参见如果不使用注入阵列,则可以访问现有的角度模块。获得引用后,可以声明常量,例如:
<script type="text/javascript">
var app = angular.module('myapp');
app.constant('memKey', 'bb7de28f-0f89-4f14-8575-d494203acec7');
app.constant('memName', 'John');
app.constant('memCity', 'New-York');
//Or do them as one config object
</script>
魔术你是对的。。。现在有没有更“正确”的方法将值传递给配置函数?您可以将提供程序传递给配置函数,它们可以是服务、值或常量。最后两个可能对你有用。请参见描述或每一项,然后查看哪一项更适合您。可能是一个常数。然后,您可以将它们用作配置函数中的参数。如果“configuratle”列表示它们在.config
中不可用,因为示例在控制器上,而不是在配置函数上……它们是示例,您也可以将它们注入配置中。这些值不应在.controller
中使用,而应在.config
部分中使用。您可以将常量插入到config中,它们首先被初始化。更新了我的答案,以反映您的实际问题。Codepen在HTML标记完成后加载angular,所以这很糟糕。另外,不要在加载事件中包装常量,这是不必要的。这次更新了一个真正的文字常量,还有另一个错误:加载codepen和angular只是一个计时问题,请参阅。我将常量定义添加到JS窗格中。它们只需要包含在angular.js include之后,以及初始声明模块之后。
.config(['memKey', 'memName','memCity' function(memKey, memName, memCity) {
}]);