如何在 AngularJS 中实现 websockets?

Posted

技术标签:

【中文标题】如何在 AngularJS 中实现 websockets?【英文标题】:How to implement websockets in AngularJS? 【发布时间】:2016-03-18 09:53:42 【问题描述】:

我想创建一个 AngularJS 站点,该站点通过来自服务器的 websockets 更新其信息。服务器将每秒发出一个新的信息块。

这是我的代码:

myApp.controller('mainController', function($scope) 
  var connection = new WebSocket("ws:localhost:4080/", ['soap', 'xmpp']);
  $scope.value= "null";
  connection.onopen = function () 
    connection.onmessage = function (e) 
      $scope.value = e.data;
    ;
  ;
;

【问题讨论】:

那么问题是什么?什么不工作? 【参考方案1】:

$scope.value = e.data; 调用封装到$scope.$apply 函数中,以将数据传播到视图中。

$scope.$apply(function() 
    $scope.value = e.data;
);

【讨论】:

以上是关于如何在 AngularJS 中实现 websockets?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Web 表单中实现 AngularJS 控制器?

如何在 AngularJS 中实现组件组合(类似于 React 渲染道具模式)?

如何在AngularJS中实现带有输入字段的模板组件

如何在 angularjs 应用程序中实现安全(!)身份验证系统?

如何在 MVC 的文件夹中实现没有 NuGet 的 angularJS

如何使用php json数组在带有angularjs的cordova中实现推送通知