我无法找到答案为什么当我在执行解析器的页面中前进和后退时,突然签名停止工作,并且我的所有Angular 6都冻结了。 (你无法点击任何链接)网站看起来不错,但没有任何工作..
我在用 “ng2-signalr”:“^ 6.1.0”,Angular 6.0.3
我实现了ng2-signalr,解析器在启动时没有工作,比我更改它使用ISignalRConnection我可以在第6次返回和转发第6次应用程序Just FREEZE,
export class SignalrConnectionService implements
Resolve<ISignalRConnection> {
@Injectable()
export class SignalrConnectionService implements Resolve<ISignalRConnection>
{
constructor(private _signalR: SignalR) { }
resolve() {
console.log('ConnectionResolver. Resolving...');
//this._signalR.createConnection();
try {
return this._signalR.connect();
}
catch (err) {
console.log("Error in _signalR.connect: " + err.message);
}
//return this._signalR.createConnection();
}
}
在路由中我做了:
path: 'my_path',
component: MyComponent,
canActivate: [AuthGuard],
resolve: { connection: SignalrConnectionService }
如果我删除了解析线,则signalR被取消,一切正常(没有冻结,没有信号R),但我需要它..
有帮助吗?
所以我找到了解决方案。看来你不需要使用解析器,而是在构造函数中,这样做:
构造函数(private _signalR:SignalR){
this._connection = _signalR.createConnection();
}
只有在ngInit中,您才能输入如下代码:
this._connection.start()。then((c)=> {
//随你
});
});
这似乎解决了问题:)