Read the statement by Michael Teeuw here.
Alert from inside function
-
I want to display a notification every time the interval runs. I get this error message:
Uncaught TypeError: this.sendNotification is not a function at OV.js:40
I think is thas something to do with where I place it because if I place it outside the interval function it does work. Maybe someone can point me in the right direction.
Module.register("OV",{ // Default module config. defaults: { text: "Openbaar Vervoer!lsdksdkk" }, // Override dom generator. getDom: function() { var wrapper = document.createElement("div"); function updateOV() { this.sendUpdate; var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var string = ""; //console.log(this.responseText); var data = JSON.parse(this.responseText); //console.log(decodeURI(data.dest)); string += "<table>"; $.each(data, function( index, value ) { string += "<tr>" console.log(value ); string += "<td>" + value.service + "</td>"; string += "<td>" + decodeURI(value.dest) + "</td>"; string += "<td>" + value.time + "</td>"; string += "<td>" + value.state + "</td>"; string += "</tr>"; }); string += "</table>"; wrapper.innerHTML = string; } }; xhttp.open("GET", "http://192.168.1.167/esp/bustijden.php"); xhttp.send(); } setInterval(function() { updateOV(); this.sendNotification("SHOW_ALERT", {title: "OV", message: "Bustijden ge-update.", timer: "1000"}); }, 10000); updateOV(); return wrapper; }, getScripts: function() { return [ 'https://code.jquery.com/jquery-2.2.3.min.js', // this file will be loaded from the jquery servers. ] }, });
-
@Luukth thats an issue of accessing the right scope, you can fix that by using an arrow function
setInterval(() => { updateOV(); this.sendNotification("SHOW_ALERT", {title: "OV", message: "Bustijden ge-update.", timer: "1000"}); }, 10000);
-
@strawberry-3.141 Thanks that did the trick.
-
@Luukth I suggest to outsource the data query from the render function
-
@strawberry-3.141 said in Alert from inside function:
I suggest to outsource the data query from the render function
Can you maybe link me to a documentation. I can’t really find a good way to learn how to make al of those functions.
-
@Luukth https://github.com/MichMich/MagicMirror/tree/master/modules
or you also can checkout some modules