如何在angular js中使用带有socket.io工厂的计时器?

时间:2018-01-26 12:13:59

标签: javascript angularjs socket.io angular-timer

我试图在角度js中使用带有socket.io的计时器,但它无法正常工作。我能够将数据从节点服务器发送到客户端,我也正常收到警报但我的计时器无法正常工作。

Angular Code

var app = angular.module('MyTimerApp', ['ngRoute', 'timer']);

app.config(['$routeProvider', function($routeProvider) {
  $routeProvider.when('/', {
    templateUrl: '/index.html'
  });
}]);

app.factory('socket', ['$rootScope', function($rootScope) {
  var socket = io.connect();
  return {
    on: function(eventName, callback){
      socket.on(eventName, callback);
    },
    emit: function(eventName, data) {
      socket.emit(eventName, data);
    }
  };
}]);


app.controller('MyController', function($scope, socket) {

    socket.on('StartTimer', function(data) {
        alert('Starting Timer');
        $scope.$broadcast('timer-start');
    }); 
});

我在html代码中添加了以下行。

<div class="timer">
    <h4><timer>{{minutes}} minutes, {{seconds}} seconds.</timer></h4>
</div>

还添加了依赖项。

<script src="../node_modules/angular-timer/dist/assets/js/angular-timer-bower.js"></script>
<script src="../node_modules/angular-timer/dist/assets/js/angular-timer-all.min.js"></script>

0 个答案:

没有答案