我有一个java脚本文件,其中包含一个配置对象,用于解码许多业务术语,以便在我的应用程序中使用。
如何才能将其提供给我的角度应用?我目前将它包含在我的html文件中,包含在所有应用程序文件之上。
这是我的config.js:
var config = {
"metadata":[
"8235205241531AF399B113140005492E":{
"name":"verison_number"
}
]
}
这里包括:
<script src="libs/bootstrap/dist/js/bootstrap.min.js"></script>
<script src="libs/angular/angular.min.js"></script>
<script src="libs/angular-resources/angular-resource.min.js"></script>
<script src="libs/angular-route/angular-route.min.js"></script>
<script src="js/config.js"></script>
<script src="js/viewer.js"></script>
<script src="js/controller.js"></script>
<script src="js/services.js"></script>
<script src="js/routes.js"></script>
<script src="js/app.js"></script>
现在这里是我的控制器只是尝试在其上执行console.log:
var MainCtrl = angular.module('MainCtrl', []);
MainCtrl.controller('loader',['$scope','$rootScope','$http','startApp', function($scope,$rootScope,$http,startApp) {
console.log(config);
console.log('loading course...');
console.log(startApp);
}]);
答案 0 :(得分:2)
您的JSON不正确。
以下是声明配置的正确方法:
var config = {
"metadata":[
{"8235205241531AF399B113140005492E":"verison_number"}
]}
答案 1 :(得分:0)
也许使用价值配方。例如:
var app = angular.module('MainCtrl');
// later
app.value('myconfigs',config); // set your "object"
// somewhere in your controller code
MainCtrl.controller('loader',['$scope','$rootScope','$http','startApp','myconfigs', function($scope,$rootScope,$http,startApp, myconfig) {
console.log(myconfig.metadata);
console.log('loading course...');
console.log(startApp);
}]);