我正在开发一个(真的)巨大的Angular 2应用程序作为我公司的内部工具。该应用程序由不同的子应用程序组成,只能由特定用户访问。
为了做到这一点,我尝试使用CanActivate类返回一个observable,查询我的一个服务来验证访问权限,但是当我尝试导入服务时,该类的构造函数无效。
所以我在应用程序本身中移动了测试,但它以同样的方式失败了。所以问题可能出在服务本身。非常奇怪的是,应用程序容器正在使用相同的服务,没有任何问题(该服务还提供了可用应用程序列表,生成应用程序菜单)。
我很确定问题是组件的加载顺序(可能是Http
- 相关),但我不知道在哪里看。遗憾的是,鉴于应用程序的复杂性,我很难将问题分离出来,而且我不知道该怎么做。
我搜索了类似的问题并发现了类似的情况,但是Angular2的开发在此期间已经取得了进展,而这些解决方案已经变得毫无用处。
答案 0 :(得分:0)
我花了一整天的时间来解决这个问题,但我想出来......差点儿。
这与DI无关,但是const导入有些错误(当然,给出的错误绝对具有误导性),我真的不知道为什么。我移动它,现在它正常工作。
无论如何,谢谢你。