我正在尝试在 Angular js 中使用带有 socket.io 的计时器,但它不起作用。我能够将数据从节点服务器发送到客户端,我也能正确收到警报,但我的计时器不工作。
角码
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>