私はChrome Packaged Appを作成しています。リソースディレクトリ内の起動時の設定ファイルがJavascriptで読み取りたい場合、スクリプト設定を配置します。
例えば
ここで、main.jsが最初にconfig.propertiesファイルをロードし、キーと値のペアを取得するようにします。
誰かがこのようなことをしましたか?
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);
}
}
...
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');
});
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;
あなたの一日をお楽しみください.. !!!
ファイルをJSONとして構造化します。 File APIまたはXHRを使用して文字列に読み取ります。次に、JSON.parse(string)。