このチュートリアルhttp://g00glen00b.be/spring-websockets-angular/の下で、stomp-websockets、sock.js で angular.js を使用しています。Websocket からメッセージを受信していますが、Websocket からのメッセージが到着した後、テンプレート ビューが更新されません。テンプレート ビューを更新するには、入力ボックスをクリアするか、マウスでスクロールする必要があります。
$scope.initiator = false;
$scope.socket = {
client: null,
stomp: null
};
$scope.initSockets = function() {
$scope.socket.client = new SockJS('/myUrl');
$scope.socket.stomp = Stomp.over($scope.socket.client);
$scope.notifyMessage = function(message) {
$scope.initiator = true;
$scope.messages.push(message)
};
$scope.socket.stomp.connect({}, function() {
$scope.socket.stomp.subscribe("/topic/messages", $scope.notifyMessage);
});
$scope.socket.client.onclose = $scope.reconnect;
};
$scope.initSockets();
template view:
<ul><li ng-repeat="item in messages track by $index">{{item}}</li></ul>