Angularjs 将外部js文件包含到
我有一个java脚本文件,其中包含一个config对象,用于解码大量业务术语,以便于在应用程序中使用 我怎样才能让我的angular应用程序使用它?我现在已经把它包括在我的html文件中,而不是所有的应用程序文件中 这是我的config.js:Angularjs 将外部js文件包含到,angularjs,Angularjs,我有一个java脚本文件,其中包含一个config对象,用于解码大量业务术语,以便于在应用程序中使用 我怎样才能让我的angular应用程序使用它?我现在已经把它包括在我的html文件中,而不是所有的应用程序文件中 这是我的config.js: var config = { "metadata":[ "8235205241531AF399B113140005492E":{ "name":"verison_number"
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>
也许使用价值食谱。例如:
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);
}]);
您的JSON不正确 以下是声明配置的正确方法:
var config = {
"metadata":[
{"8235205241531AF399B113140005492E":"verison_number"}
]}
如果html中包含angular脚本,则angular可以访问全局配置对象。是否需要将其插入我的应用程序?它显示为未定义。@JasonSpick至少显示某种代码。@JasonSpick我能看到不起作用的唯一方法是,如果您没有在当前路由上使用
ng controller
实例化该控制器。换句话说,没有一个控制器代码会运行。其他的一切都正常。这并不能解决问题。如果config
确实未定义,那么您只是将值设置为未定义。嘿嘿,太明显了!有时候很难看到这些。干得好我将更新您的答案,即使用这样的全局变量进行测试是不合适的,也是不好的。他应该设置一个角度服务/值,并在需要的地方注入。谢谢@m59!!谢谢你@Jasonspick:这里有一把工作小提琴……我想其他一些js文件可能有问题。有控制台错误吗?@JasonSpick:更新了哪个代码?json看起来与您之前的相同?不,我在数组中没有对象。我想我正在努力让数组读取键值。
var config = {
"metadata":[
{"8235205241531AF399B113140005492E":"verison_number"}
]}