/ / Polymer 1.x:カスタムビヘイビア内でiron-ajaxを使用する - ajax、polymer、polymer-1.0、polymer-1.x、iron-elements

Polymer 1.x:ajax、polymer、polymer-1.0、polymer-1.x、iron-elementsのカスタムビヘイビア内でのIron-ajaxの使用

私はカスタム動作を構築しています。それを呼び出します MyBehaviors.MySpecialBehavior.

しかし、私はローカルに保存されているJSONファイルに保存されたデータを取得する必要があります my-data.json.

どうすれば私の行動の中でこれを行うことができますか?インポートしようとしています iron-ajax しかし、そのメソッドやプロパティにアクセスする方法を考えることはできません。

my-special-behavior.html
<link rel="import" href="../../bower_components/polymer/polymer.html">
<link rel="import" href="../../bower_components/iron-ajax/iron-ajax.html">

<script>
var MyBehaviors = MyBehaviors || {};
MyBehaviors.MySpecialBehaviorImpl = {
// Methods go here that rely on data at my-data.json
};

MyBehaviors.MySpecialBehavior = [
MyBehaviors.MySpecialBehaviorImpl,
];
</script>
my-data.json
{
"important": "data",
"j": 5,
"o": "N",
"goes": "here"
}

回答:

回答№1の場合は3

あなたはプログラム的に要素を作成することができます。どのように見てください アイアンアヤックス それ自体でそれを使う アイアンリクエスト 内部的に

https://github.com/PolymerElements/iron-ajax/blob/master/iron-ajax.html#L442

あなたのユースケースを参考にして、ユーザー a1626 このスニペットを作成しました:

var ajax = document.createElement("iron-ajax");
ajax.contentType = "application/json";
ajax.handleAs = "json";
ajax.url = <url goes here>
ajax.method = "get";
ajax.addEventListener("response", function (event) {
//response handler
});
ajax.generateRequest();

回答№2の場合は1

あなたはJSONデータにアクセスすることができます ajax.lastResponse 追加されたイベントリスナー内

var ajax = document.createElement("iron-ajax");
ajax.contentType = "application/json";
ajax.handleAs = "json";
ajax.url = <url goes here>
ajax.method = "get";
ajax.addEventListener("response", function (event) {
//response handler
console.log("ajax", ajax.lastResponse);
});
ajax.generateRequest();

関連する質問


コメント(0)

コメントを追加