我有下面的代码,我用来使用带有聚合物的铁ajax调用http请求,所以使用聚合物属性传递body和last-response的值。我们可以看到这里我们有requestBody聚合物属性我们是在requestBody中返回no值,所有值都是硬编码,如开始和结束以及标记下的名称。
现在我的问题是我希望在名称中获取uri值而不是在名称中传递硬编码值我想在uri值更改时在name参数下动态获取uri值。
<iron-ajax
id="Request"
method="POST"
content-type="application/json"
auto
url="/api/series/v1/points"
last-response="{{Data123}}"
body="{{requestBody}}">
</iron-ajax>
Polymer({
is: 'test-view',
behaviors: [GlobalsBehaviour],
properties: {
uri: {
type: String,
observer: '_uriChanged'
},
requestBody:{
type: Object,
value: function() {
return {
"start": 11111,
"end": 123333,
"tags": [
{
"name" : "/asset/India/rotor",
}
]
};
}
},
Data123:{
type: Object,
observer: '_formateData'
},
observers: [
'_uriChanged(globals.uri)'
],
我尝试过"name" : this.uri
和"name" : uri
,但无法获得价值
注意:uri来自另一种聚合物组分,在某些情况下它来自全局变量。
请让我知道如何在requestBody属性中的name属性中获取uri值
答案 0 :(得分:0)
首先从iron-ajax标签中删除auto,然后按如下所示更改_uriChanged函数
_uriChanged: function(uri) {
this.set('requestBody.tags.0.name', uri);
this.$.Request.generateRequest();
}