Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在angular 4单元测试中为ActivatedRoute的父路由创建MockActivatedRoute_Javascript_Angular_Unit Testing_Karma Jasmine - Fatal编程技术网

Javascript 如何在angular 4单元测试中为ActivatedRoute的父路由创建MockActivatedRoute

Javascript 如何在angular 4单元测试中为ActivatedRoute的父路由创建MockActivatedRoute,javascript,angular,unit-testing,karma-jasmine,Javascript,Angular,Unit Testing,Karma Jasmine,假设我有一个访问父路由的组件,如下所示: ngOnInit() { this.sub = this.route.parent.parent.parent.params.subscribe(params => { this.siteId = params["siteId"]; this.loadContents(); this.loadTypes(this.siteId); });} providers: [ SiteService,

假设我有一个访问父路由的组件,如下所示:

ngOnInit() {    
this.sub = this.route.parent.parent.parent.params.subscribe(params => {
    this.siteId = params["siteId"];
    this.loadContents();
    this.loadTypes(this.siteId);
});}
 providers: [
        SiteService,
        UserService,
        Modal,
        Overlay,
        {
            provide: ActivatedRoute,
            useValue: { parent: { parent: { parent: { 'params': Observable.from([{ 'siteId': '156' }]) } } } },
        },
        OverlayRenderer,
        AuthHttp,
        MessageService,
    ],
我为父路由提供假值,如下所示:

ngOnInit() {    
this.sub = this.route.parent.parent.parent.params.subscribe(params => {
    this.siteId = params["siteId"];
    this.loadContents();
    this.loadTypes(this.siteId);
});}
 providers: [
        SiteService,
        UserService,
        Modal,
        Overlay,
        {
            provide: ActivatedRoute,
            useValue: { parent: { parent: { parent: { 'params': Observable.from([{ 'siteId': '156' }]) } } } },
        },
        OverlayRenderer,
        AuthHttp,
        MessageService,
    ],
它给了我以下错误:

失败:无法读取未定义的属性“未定义”

第行:

useValue:{parent:{parent:{'params':可观察。从([{'siteId':'156'}])}开始

请告诉我我正在做什么。 我引用了以下链接:

,,

尝试
params:of({'siteId':'156'})