2016-05-21 46 views
3

我在嘗試與express.jssocket.ioangular建立一個非常簡單的聊天。有用。我遇到的唯一問題是套接字消息事件被觸發時,它不會同步並將其呈現到頁面上。

var socket = io.connect('http://localhost:8080'); 



angular.module('chat',[]).controller('chatController',['$scope','$apply',function($scope,$apply){ 
    chat = $scope; 
    chat.messages = []; 

    socket.on('messages',function(data){ 
     chat.$apply(function(){ 
      chat.messages.push(data); 
     }); 
    }); 
}]) 

我知道我應該使用$申請以某種方式,但它給了我一個未知的提供者的錯誤。 什麼是實現$apply

回答

3

無需通過$應用作爲依賴,

試試這個

angular.module('chat',[]).controller('chatController',['$scope',function($scope){ 
    $scope.messages = []; 
    socket.on('messages',function(data){ 
     $scope.$apply(function(){ 
      $scope.messages.push(data); 
     }); 
    }); 
}]) 
+0

它解決了錯誤的正確方法。 –

相關問題