javascript - 如何在 AngularJS 中读取 Java 属性文件?

标签 javascript angularjs

有什么方法可以从驻留在 Web 服务器外部的 angularjs 读取属性文件吗?

就像在 java 中一样,属性文件部署在项目之外,但我们可以在我们的项目中读取这些文件作为 filter.properties,这样任何解决方案都存在于 angularJS 中。

我这样试过,但没有定义。

过滤器属性:

key1=value1 
key2=value2

sampleController.js

var app = angular.module('sampleApp', []);
    app.controller('sampleController', function($scope, $http) {
    $http.get('filter.properties').then(function (response) {
        console.log('a is ', JSON.stringify(response.data.key1));
    });
});

最佳答案

在 angularjs 中有几种访问属性文件的方法。

就像每个文件一样,属性文件是一个扩展名为 .properties 的文件。 由于 java 属性文件是在一行中由 = 分隔的键值对。

因此,我们可以通过遍历属性文件中的每一行并使用 = 符号将其拆分并将其存储为有助于快速访问它的 javascript 对象,从而将属性文件转换为 javascript 对象。

这是它的 javascript 实现

function extractProperties(propertiesFileContents){
  var keyValuePairs =propertiesFileContents.split("\n");
  properties ={}
  for (i = 0; i < keyValuePairs.length; i++) {
     var keyValueArr=keyValuePairs[i].trim().split("=");
     var key=keyValueArr[0];
     var value=keyValueArr[1];
     properties[key]=value
  }
  return properties;
}

根据您的代码,我添加了一个 plunker希望这对你有帮助

关于javascript - 如何在 AngularJS 中读取 Java 属性文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42945760/

相关文章:

javascript - 为什么我的 ng-repeat 不起作用?

javascript - PHP : insert multiple check boxes values into one MySQL column

javascript - 如何从 Angular 服务中的 API 获取数据并将其存储以供将来任何人使用

javascript - Angular 指令未显示在 ng-Switch 中

javascript - 将文本与音频文件同步

ruby-on-rails - Rails CSRF 保护 + Angular.js : protect_from_forgery makes me to log out on POST

javascript - CSS在Chrome中申请代码,在Firefox和IE中申请不到?

javascript - jquery/Dropzone.js 获取添加图片的当前索引

javascript - 通过识别缺失值重新创建 Json

javascript - Gatsby - Javascript 替换来自 API 响应的图像 src