Ich habe eine einfache Polymer-Frontend-App. Darin habe ich einfachen Ajax, um Daten aus dem Back-End zu erhalten:Polymer Eisen-Ajax Intervall Anrufe
<iron-ajax id="getAjax"
auto
url="http://localhost:14039/InvoiceService/envelop/{{envelopId}}/invoices"
handle-as="json"
last-response="{{invoices}}">
Der Ajax wird beim Start aufgerufen und funktioniert. Immer wenn ich andere Eisen-Ajaxen POST benutze, rufe ich this.$.getAjax.generateRequest();
an und es funktioniert.
Frage ist, wie kann ich diese Funktion mit einer Art Timer aufrufen. Die Idee hier ist, die Seite mit Eisen-Ajax zu "aktualisieren". sah ich ein paar Antworten auf how to do it on JQuery, aber ich verwirrt mit Polymers Eigenschaften vs Funktionen vs internen Funktionen vs diese $ usw.
ich die _updateData Funktion Polymer json hinzugefügt (I ersetzt das $ Ajax mit diesem... $ .getAjax, was die ID meines Iron-Ajax-Elements ist, nannte es auf der Ready-Funktion mit this._up dateData() und mit chrome kann ich sehen, wie der Anruf zweimal ausgelöst wird, sobald er fertig ist, und nach zwei Sekunden. Das Gleiche gilt für Ihre Probe. Ist es erforderlich, den On-Response-Handler erneut async aufzurufen? (was ich nicht verwende, da ich die letzte Antwort verwende, aber hinzugefügt werden kann) – Mathter
Ja, ich habe absichtlich nur zwei Anrufe getätigt, so dass Sie sehen konnten, wie man 'async' verwendet. Es könnte leicht modifiziert werden, um kontinuierlich gemacht zu werden, indem _updateData von ready() in _onResponse() verschoben wird. Ich hatte in meinem Beispiel den On-Response-Handler hinzugefügt, um zu zeigen, dass eine zweite Antwort empfangen wurde. – tony19
Ich habe deine Antwort angenommen. Ich möchte, dass Sie diesen letzten Teil der Antwort für zukünftige Referenzen hinzufügen. Vielen Dank! – Mathter