J'essaye d'utiliser Spring websockets (STOMP) avec Vue mais je n'arrive pas à comprendre comment le faire ou si c'est possible. Mes Websockets fonctionnent avec JS, mais quand j'essaie avec Vue, je suis bloqué. Voici mon code vue:Spring stomp websockets avec vue.js
var app = new Vue({
el: '#app',
data: {
stompClient: null,
gold: 0
},
methods: {
sendEvent: function() {
this.stompClient.send("/app/hello", {}, JSON.stringify({'name': $("#name").val()}));
}
},
created: function() {
this.stompClient = Stomp.over(new SockJS('/gs-guide-websocket'));
this.stompClient.connect()
this.stompClient.subscribe('/topic/greetings', function (greeting) {
console.log(JSON.parse(greeting.body).content);
});
},
})
Mes connecter et fonction d'envoi fonctionne et je peux voir le message dans le back-end mais le problème est la fonction abonner. Il a besoin d'une fonction de rappel mais cela ne se déclenche jamais. J'ai également essayé de créer une méthode en vue et appelez cela
this.stompClient.subscribe('/topic/greetings', vueFunc())
mais cela ne fonctionne pas non plus. J'ai trouvé une bibliothèque au https://github.com/FlySkyBear/vue-stomp mais je n'arrive pas à comprendre comment l'utiliser et ça a l'air vraiment en désordre. Je préfère utiliser JS simple alors.
Quelqu'un at-il une solution? Merci