我已經寫了下面的自定義元素刷新數據:聚合物 - 定期從API調用
<link rel="import" href="../bower_components/polymer/polymer-element.html">
<link rel="import" href="shared-styles.html">
<dom-module id="my-voltage">
<template is="auto-binding">
<div class="circle">{{volts}}</div>
<div class="circle">{{time}}</div>
</template>
<script>
function httpGet(theUrl)
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", theUrl, false);
xmlHttp.send(null);
return xmlHttp.responseText;
}
class MyVoltage extends Polymer.Element {
static get is() {
return "my-voltage";
}
static get properties() {
return {
volts: {
type: String,
notify: true,
reflectToAttribute: true
},
}
}
constructor() {
super();
var volt = JSON.parse(httpGet('API_call'));
var voltage = volt.value.toString();
var ts = volt.timestamp.toString();
this.volts = voltage;
this.time = ts;
}
}
customElements.define(MyVoltage.is, MyVoltage);
</script>
</dom-module>
這通過API調用獲取數據,並顯示正確的負載。但是,我需要它定期刷新數據,而無需用戶重新加載整個頁面。我一直在閱讀文檔,但找不到解決方案。我到底需要將代碼定期調用API並獲取新數據?我怎樣才能做到這一點?
這看起來應該可以工作,但沒有,我仍然試圖找出什麼是錯的。 –
(我確實用實際的api調用替換了api/call) –
我改變了代碼並添加了'data'作爲屬性,你能檢查它是否修復了嗎? – Elar