Utilisation d'événements de WebSockets / serveur envoyés avec une fléchette angulaire
-
20-12-2019 - |
Question
J'essayais d'utiliser une fléchette angulaire avec des événements WebSockets / Server envoyés et n'a pas pu trouver de documentation / exemples (il y en a pour AngularJs, mais cela semble très différent pour de telles choses).Quelques choses que j'ai essayées n'ont pas non plus de travail.
Est-ce que quelqu'un sait comment faire cela?
Voici une version de ce que j'ai essayé et de l'erreur:
@NgController (
selector: "ACdistribution",
publishAs : "dstbn")
class ACDstbnController{
List <WtdPres> distbn;
void updateDstbn(List<WtdPres> newdstbn){
distbn = newdstbn;
}
final dstbnsrc = new EventSource("../dstbns")
..onMessage.listen((event){
List wps = JSON.decode(event.data);
List <WtdPres> newdistbn = wps.map((wp) => new WtdPres.fromJson(wp));
updateDstbn(newdistbn);
});
}
L'erreur que j'ai eu dans la construction de pub était:
web/provingground.dart:55:5:
'updateDstbn' is only available in instance methods.
updateDstbn(newdistbn);
^^^^^^^^^^^
La solution
Il existe des limitations sur ce que vous pouvez faire sur les initialisateurs pour les champs finaux.
Pouvez-vous essayer de mettre ce code à l'intérieur du constructeur
var dstbnsrc;
ACDstbnController() {
dstbnsrc = new EventSource("../dstbns")
..onMessage.listen((event){
List wps = JSON.decode(event.data);
List <WtdPres> newdistbn = wps.map((wp) => new WtdPres.fromJson(wp));
updateDstbn(newdistbn);
});
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow