NEWS
Frage: wie on() aus array anlegen?
-
Ich brauche mal einen Denkanstoss.
Wenn ich mehrere subscription()/on() mit IDs aus einem Array oder JSON anlegen möchte, wie gehe ich da am elegantesten vor?
Die Subscriptions aus einer Schleife anzulegen funktioniert zwar, aber mit der Warnung man soll keine Funktionen innerhalb einer Schleife anlegen (oder so ähnlich).
als IDs z.B.: [idGerät1, idGerät2, idDatenpunktX, idDatenpunktY]
Die IDs sind vollkommen gemischt (hm-rpc, javascrip, wetter, usw.).
-
Ich brauche mal einen Denkanstoss.
Wenn ich mehrere subscription()/on() mit IDs aus einem Array oder JSON anlegen möchte, wie gehe ich da am elegantesten vor?
Die Subscriptions aus einer Schleife anzulegen funktioniert zwar, aber mit der Warnung man soll keine Funktionen innerhalb einer Schleife anlegen (oder so ähnlich).
als IDs z.B.: [idGerät1, idGerät2, idDatenpunktX, idDatenpunktY]
Die IDs sind vollkommen gemischt (hm-rpc, javascrip, wetter, usw.). `
Wenn du verstehst, was du machst, dann darfst du warning ignorieren.Ansonsten
`function doSomething(obj) { } for (var i = 0; i < IDs.length; i++){ on(IDs[i], doSomething); }` [/i] -
@Jey Cee:Hallo ruhr,
Hast du damit erfolg gehabt? Ich hab das probiert aber da tut sich gar nix. `
Der Vorschlag ist 1:1 das, wie ich es schon umgesetzt hatte.
! ````
//
! // TODO: die Subscription nicht im Loop anlegen!
! function onAnlegen() {
for (var geraet in schwellwerte) {
logs("Schedule angelegt: " + geraet,"debug");
! on({id: geraet}, function(obj) {
//log(obj.id + ": " + obj.state.val);
setSchwellwerte(obj);
});
}
}
! // [...]Dabei wird hat die Warnung angezeigt "dont make fuctions within a loop". Funktioniert seit Wochen ohne Probleme. Wollte nur wissen, ob man es eleganter und ohne Warnung umsetzen kann. Der Vorschlag von Bluefox entsprach dann aber schon der vorhandenen Umsetzung.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden