li-*_*raz 13 signalr angularjs
我正在玩Angular和SignalR,我曾尝试创建一个充当经理的服务.
dashboard.factory('notificationsHub', function ($scope) {
var connection;
var proxy;
var initialize = function () {
connection = $.hubConnection();
proxy = connection.createHubProxy('notification');
proxy.on('numberOfIncidents', function (numOfIncident) {
console.log(numOfIncident);
$scope.$emit('numberOfIncidents', numOfIncident);
});
connection.start()
.done(function() {
console.log('Connected');
})
.fail(function() { console.log('Failed to connect Connected'); });
};
return {
initialize: initialize
};
});
Run Code Online (Sandbox Code Playgroud)
但是我得到了错误Error: Unknown provider: $scopeProvider <- $scope <- notificationsHub.
如何使用pubsub将所有通知传递给控制器?也许jQuery?
$scope在此上下文中不存在,因为在创建控制器并创建新的子范围时会注入该内容.但是,$rootScope您可以在需要时使用.
此外,请注意$emit()向上,您的控制器范围将不会看到它.您可能需要切换到$broadcast()以便事件向下或注入$rootScope您希望能够订阅的控制器'numberOfIncidents'
查看角度文档和范围上有用的wiki.
| 归档时间: |
|
| 查看次数: |
21742 次 |
| 最近记录: |