Angular DI如何实例化转换(ui-router-ng2)?

Angular DI如何实例化转换(ui-router-ng2)?,angular,angular-ui-router,angular-ui-router-extras,Angular,Angular Ui Router,Angular Ui Router Extras,我在玩ui-router-ng2。在单元测试具有转换依赖性的组件以获取查询字符串时遇到了几个问题 然后我浏览了这个模块的代码,看看如何用Jasmine在我的测试套件中注入这个实用程序 到目前为止,我还没有发现ui-router-ng2公开的任何负责创建转换的工厂类。 有一个提供工厂方法的transitionService,但我不确定这是否是我想要的,以及如何在测试模块设置中利用它 问这个问题是因为我在运行测试套件时遇到“无转换提供程序”错误,下面是伪代码: import {APP_BASE_H

我在玩ui-router-ng2。在单元测试具有转换依赖性的组件以获取查询字符串时遇到了几个问题

然后我浏览了这个模块的代码,看看如何用Jasmine在我的测试套件中注入这个实用程序

到目前为止,我还没有发现ui-router-ng2公开的任何负责创建转换的工厂类。 有一个提供工厂方法的transitionService,但我不确定这是否是我想要的,以及如何在测试模块设置中利用它

问这个问题是因为我在运行测试套件时遇到“无转换提供程序”错误,下面是伪代码:

 import {APP_BASE_HREF} from "@angular/common";
import {TestBed, async, inject} from "@angular/core/testing";
import {AppModule} from "../index";
import {Observable} from "rxjs";
import {StateService, Transition} from "ui-router-ng2";
import {XXComponent} from "./XXX.component";
describe('XXComponent', () => {
beforeEach(async(() => {
TestBed.configureTestingModule({
providers: [
{provide: APP_BASE_HREF, useValue: '/'}
],
imports: [
AppModule
]
});
TestBed.compileComponents();
}));

it('should complete XXX', async(inject(
[StateService, Transition, XXComponent], (service, transition, component) => {
let oId="823";
let aId ="123";
spyOn(transition, 'params').and.returnValue({'oId': '823', 'aId': '123'});
spyOn(stateService, 'go').and.stub();
... })));
})

如有任何意见,我们将不胜感激。

请参阅。我还打开了GitHub上的一个问题,我在这里的问题是如何使我的UT案例针对一个依赖于转换的组件。顺便说一句,谢谢你的评论。不确定是否相关,但我无法将
Transition
注入我的根组件。我必须注入
router:UIRouter
,然后使用
router.transitionService
进入转换。请参见。我还打开了GitHub上的一个问题,我在这里的问题是如何使我的UT案例针对一个依赖于转换的组件。顺便说一句,谢谢你的评论。不确定是否相关,但我无法将
Transition
注入我的根组件。我必须注入
router:UIRouter
,然后使用
router.transitionService
进入转换。