所以我试图将socket.io与我的控制器一起使用,但由于某些原因我无法设置它我尝试了很多不同的东西,但似乎无法找到那个最佳点。继承人我的设置:
var main = angular.module("main", []);
main.factory('socket', function ($rootScope) {
var socket = io.connect();
return {
on: function (eventName, callback) {
socket.on(eventName, function () {
var args = arguments;
$rootScope.$apply(function () {
callback.apply(socket, args);
});
});
},
emit: function (eventName, data, callback) {
socket.emit(eventName, data, function () {
var args = arguments;
$rootScope.$apply(function () {
if (callback) {
callback.apply(socket, args);
}
});
})
}
};
});
main.controller('Triv', ['$scope', 'socket','$http','$interval',
'$timeout', function ($scope, $http,$interval,socket, $timeout) {
...... })]);
答案 0 :(得分:0)
我在gulp管理的bower安装socket.io时遇到了类似的问题。 我所做的是在脚本源目录中创建了一个符号链接
socket.io.js -> ../../bower_components/socket.io-client/socket.io.js
强制在脚本列表末尾包含socket.io.js