web-dev-qa-db-ja.com

プロジェクトディレクトリからjavascriptのプロパティファイルを読み取る方法は?

私はChrome Packaged Appを作成しています。リソースディレクトリ内の起動時の設定ファイルがJavascriptで読み取りたい場合、スクリプト設定を配置します。

例えば

  • 事業
    • Webコンテンツ
      • index.html
      • manifest.json
      • main.js
      • 資源
        • config.properties

ここで、main.jsが最初にconfig.propertiesファイルをロードし、キーと値のペアを取得するようにします。

誰かがこのようなことをしましたか?

11
D.S

Sowbugの答えの線に沿ってこれを行う非常に簡単な方法がありますが、XHRやファイルの読み取りは必要ありません。

手順1.次のようにresource/config.jsを作成します。

gOptions = {
  // This can have nested stuff, arrays, etc.
  color: 'red',
  size: 'big',
  enabled: true,
  count: 5
}

手順2.次のファイルをindex.htmlに含めます。

<!doctype html>
<head>
  <script src="resource/config.js"></script>
  ...

ステップ3. main.jsから(またはどこでも)オプションに直接アクセスします。

  ...
  if (gOptions.enabled) {
    for (var i = 0; i < gOptions.count; i++) {
      console.log(gOptions.color);
    }
  }
  ...
33
Ben Wells

messageResource.js を使用できます。これは、プロパティファイルを読み込むために私が作成した単純なJavaScriptライブラリです。

1)index.htmlにmessageResource.jsを含めます。

<script src="messageResource.min.js"></script>    

2)次のコードを使用して、main.jsからconfig.propertiesのキーと値のペアを取得できます。

// initialize messageResource.js  
messageResource.init({
  // path to directory containing config.properties
  filePath : 'resource'
});

// load config.properties file
messageResource.load('config', function(){ 
  // load file callback 

  // get value corresponding  to a key from config.properties  
  var value = messageResource.get('key', 'config');
}); 
6
Khan

JSFでは非常に簡単ですが、JavaScriptから新しいパラメーターを読み取る必要があるたびにHTMLファイルを変更する必要があります。プロジェクトディレクトリのプロパティファイル(config.properties)には、キーと値のペアとして次のパラメーターがあります。

parameter.key=parameter.value

プロパティファイル名はfaces-config.xmlで設定されます

<application>
    <resource-bundle>
        <base-name>com.example.project.properties.config</base-name>
        <var>configuration</var>
    </resource-bundle>
</application>

したがって、HTMLファイル内の非表示入力でプロパティ値を使用できます。

<h:inputHidden id="parameter_key" value="#{configuration['parameter.key']}" />

JavaScript関数から、次の行を使用してパラメーター値を読み取ります。

var parameter_value = document.getElementById("parameter_key").value;

あなたの一日をお楽しみください.. !!!

0
Keshan Fernando

ファイルをJSONとして構造化します。 File APIまたはXHRを使用して文字列に読み取ります。次に、JSON.parse(string)。

0
sowbug