AngularJS - 将配置文件添加到项目中

时间:2015-12-07 12:57:56

标签: javascript java angularjs

config.properties

foo="fooTest"
bar="barTest"

configGrabber.java

//Not going to paste all the code
//It successfully returns the JSON containing the config.properties file
//path to this is /resources

负载config.js

(function () {
  'use strict';
    angular.module('configService', [])
        .service('configFac', function ($http) {
            var data;
            $http.get('../api/resources').then(function (response) {
                data = response.data;
            });
        });
}());

app.js

(function () {
     'use strict';

  angular.module('app', ['configService'])
    .controller('appCtrl', function ($scope, configService, $q) {
        var data;
        $q.all([configService]).then(function (response) {
            data = response[0];
        });
        $scope.configResources = data;
   });
}());

的index.html

...
<div>{{configResources.foo}}</div>
<div>{{configResources.bar}}</div>
...

因此,我尝试在此项目中添加配置文件,以便用户可以轻松自定义它。 JSON文件正好使用load-config.js,但是数据没有转移到控制器,你可以在这段代码中找到任何错误或缺陷吗?

1 个答案:

答案 0 :(得分:0)

如果服务仅仅因为这个原因而存在,因此不需要任何其他功能,它可以看起来像这样:

.service('configFac', function ($http) {
    return $http.get('../api/resources')
        .then(function success(response) {
            console.log('Success: '+JSON.stringify(response));
            return response;
        }, function error(error) {
            console.log('Error: '+JSON.stringify(error));
            return error;
    });
};