私はiron-pagesとapp-routerを使用して私を新しいページに送ります。ここで私はiron-ajax要素が必要です。Polymer Ajaxルーティングパラメータからのバインディングが機能しない
しかし、アイアンアヤックスでパラメータ{{parameter.identifier}}を追加しようとすると機能しません。
私はそれがルーティングパラメータがローカルであることと関係があり、iron-ajaxはそれを認識しないと考えていますか? 私はparamのプロパティとゲッター関数を追加しようとしましたが、何も動作していないようです...
また、私はバインディング変数{{parameter.identifier} }を照会したデータベースに存在する値に置き換えます。
<dom-module id="cst-data">
<template>
<style>
</style>
<triplat-route name="dataRoute" params="{{parameters}}"></triplat-route>
<iron-ajax
id="getData"
auto
url="http:/.../oslc/os/OSLCPERSON?"
params='{"oslc.where":"dcterms:identifier={{parameters.identifier}}"
}'
headers='{"Content-Type": "application/json;charset=utf-8"'
handle-as="json"
on-response="handleResponse"
></iron-ajax>
<paper-card>{{parameters.identifier}}</paper-card>
<paper-card>{{dataRes.name}}</paper-card>
</template>
</dom-module>
<script>
Polymer({
is: "cst-data" ,
handleResponse: function() {
this.dataRes = this.$.getData.lastResponse['rdfs:member'];
}
});
</script>
もっとコードを表示できますか?機密データとURLを難読化することができます。 – Tanbouz
答えをいただきありがとうございます。わかりやすくするために残りのコードを追加しました。 – ChristofferA
と{{parameters.identifier}}の内容は何ですか?それは未定義ですか?これをデバッグするには、 '='の前に '$'記号を追加するだけです。したがって: 'params $ = '{" oslc.where ":" dcterms:識別子= {{parameters.identifier}} " }"。ブラウザのデベロッパーツールでは、実際の結果はどうなるでしょうか。もう1つの質問ですが、 'console.log(this.parameters)'を実行すると、出力は何ですか? –