Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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 jasmine测试用例中的应用程序常量错误_Javascript_Angular_Jasmine_Karma Jasmine - Fatal编程技术网

Javascript 导入angular jasmine测试用例中的应用程序常量错误

Javascript 导入angular jasmine测试用例中的应用程序常量错误,javascript,angular,jasmine,karma-jasmine,Javascript,Angular,Jasmine,Karma Jasmine,在component.spec中导入组件时,endponitConfig将显示错误为ReferenceError:endponitConfig未定义 component.ts import { Component, Type, OnInit, ViewEncapsulation, ViewChild } from '@angular/core'; import { Router } from '@angular/router'; import { Http, Response, Headers

在component.spec中导入组件时,endponitConfig将显示错误为ReferenceError:endponitConfig未定义

component.ts

import { Component, Type, OnInit, ViewEncapsulation, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { Http, Response, Headers } from '@angular/http';
import { DriverService } from '../../services/driver.service';

import { endponitConfig } from '../../../../environments/endpoints';


@Component({
  templateUrl: './drivers.list.component.html',
})
export class DriversListComponent {
  //calling const form endpoint file
  let driverEndpoint=endponitConfig.DRIVER_API_ENDPOINT;
    //logic 
}
ReferenceError: endponitConfig is not defined
    at Plugin.init (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:145039:22)
    at new Plugin (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:144781:14)
    at HTMLElement.<anonymous> (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:146128:48)
    at Function.each (http://localhost:9876/base/node_modules/jquery/dist/jquery.min.js?1055018c28ab41087ef9ccefe411606893dabea2:2:2715)
    at r.fn.init.each (http://localhost:9876/base/node_modules/jquery/dist/jquery.min.js?1055018c28ab41087ef9ccefe411606893dabea2:2:1003)
    at r.fn.init.Array.concat.$.fn.(anonymous function) [as jarvisWidgets] (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:146123:21)
    at WidgetsGridComponent.Array.concat.WidgetsGridComponent.ngAfterViewInit (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:128191:51)
    at callProviderLifecycles (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11542:18)
    at callElementProvidersLifecycles (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11517:13)
    at callLifecycleHooksChildrenFirst (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11501:17)
其中endpoints.ts包含

export const endponitConfig: any = {
   // Custom URL End Points
  LOAD_API_ENDPOINT: '/dashboard/api/loadAppointments/',
   LOAD_APPOINTMENT_API_ENDPOINT:'/dashboard/api/loadAppointmentType/',
   DRIVER_API_ENDPOINT: '/dashboard/api/drivers/',
};
组件规范ts

import { MockBackend } from '@angular/http/testing';
import { ModalDirective } from 'ngx-bootstrap';
import { DriverService } from '../../services/driver.service';
import { CommonModule, } from '@angular/common';
import { BaseRequestOptions, XHRBackend, Http, HttpModule } from '@angular/http';
import { SmartadminModule } from "../../../shared/smartadmin.module";
import { SmartadminDatatableModule } from "../../../shared/ui/datatable/smartadmin-datatable.module";
import { DataTableModule } from "angular2-datatable";
import { RouterTestingModule } from '@angular/router/testing';
import { Router, ActivatedRoute } from "@angular/router";
import { routing } from '../../drivers.routing';
import { ComponentLoaderFactory } from 'ngx-bootstrap';
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import { DebugElement, NO_ERRORS_SCHEMA } from '@angular/core';
import { DriversListComponent } from './drivers.list.component';
import { MyDatePickerModule } from 'mydatepicker';
import { SelectModule } from 'angular2-select';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { CoreModule } from "../../../core/core.module";
import { BrowserModule } from '@angular/platform-browser';
import { endponitConfig } from '../../../../environments/endpoints';
let MockDriverArray = [
    {
        "id": 22,
        "firstName": "Aaron",
        "lastName": "Maisie",
        "email": "aaron@test.net",
        "phoneNumber": "2602185194",

    }
];

describe('Driver list component', () => {
    let driverListComponent: DriversListComponent;
    let fixture: ComponentFixture<DriversListComponent>;
    let router: Router;
    let driverService, mockBackend;
    beforeEach(async(() => {
        TestBed.configureTestingModule({
            declarations: [DriversListComponent],
            imports: [SmartadminModule,
                SmartadminDatatableModule,
                MyDatePickerModule,
                CommonModule,
                SelectModule,
                ReactiveFormsModule,
                FormsModule,
                // routing,
                DataTableModule,
                MyDatePickerModule,
                BrowserModule,
                // Error500Module,
                CoreModule,
                HttpModule,
                RouterTestingModule.withRoutes([{
                    path: '', component: DriversListComponent
                }])],
            schemas: [NO_ERRORS_SCHEMA],
            providers: [
                DriverService,
                MockBackend,
                { provide: XHRBackend, useClass: MockBackend }
            ]
        })
            .compileComponents();
        router = TestBed.get(Router);

        fixture = TestBed.createComponent(DriversListComponent);
        driverListComponent = fixture.componentInstance;
        driverService = TestBed.get(DriverService);
        mockBackend = TestBed.get(MockBackend);
        fixture.detectChanges();
    }));


    it('Driver Service should be defined', () => {
        expect(driverService).toBeDefined();
    });


    it('Driver list page is loaded', () => {
        expect(driverListComponent).toBeTruthy();
    });


    describe('Functional', () => {
        it('should navigate to the update page for the driver.id of the driver passed in.', () => {
            spyOn(router, 'navigate');
            driverListComponent.goToUpdateDriverDetials(MockDriverArray[0]);
            expect(router.navigate).toHaveBeenCalled();
            expect(router.navigate).toHaveBeenCalledTimes(1);
            expect(router.navigate).toHaveBeenCalledWith(['/drivers/updateDriver', MockDriverArray[0].id]);
        });
    })
});
从'@angular/http/testing'导入{MockBackend};
从“ngx引导”导入{ModalDirective};
从“../../services/driver.service”导入{driversservice};
从“@angular/common”导入{CommonModule,};
从'@angular/Http'导入{BaseRequestOptions,XHRBackend,Http,HttpModule};
从“../../../shared/smartadmin.module”导入{SmartadminModule};
从“../../../shared/ui/datatable/smartadmin datatable.module”导入{SmartadminDatatableModule}”;
从“angular2 datatable”导入{DataTableModule};
从“@angular/router/testing”导入{RouterTestingModule};
从“@angular/Router”导入{Router,ActivatedRoute}”;
从“../../drivers.routing”导入{routing};
从“ngx引导”导入{ComponentLoaderFactory};
从“@angular/core/testing”导入{async,ComponentFixture,TestBed};
从“@angular/platform browser”导入{By}”;
从“@angular/core”导入{DebugElement,无_错误_模式};
从“./drivers.list.component”导入{DriversListComponent};
从“mydatepicker”导入{MyDatePickerModule};
从'angular2 select'导入{SelectModule};
从'@angular/forms'导入{FormsModule,ReactiveFormsModule};
从“../../../core/core.module”导入{CoreModule};
从“@angular/platform browser”导入{BrowserModule};
从“../../../../environments/endpoints”导入{endponitConfig};
让MockDriverArray=[
{
“id”:22,
“名字”:“亚伦”,
“姓氏”:“梅西”,
“电子邮件”:aaron@test.net",
“电话号码”:“2602185194”,
}
];
描述('驱动程序列表组件',()=>{
让driverListComponent:driverListComponent;
let夹具:组件夹具;
让路由器:路由器;
让driverService,mockBackend;
beforeach(异步(()=>{
TestBed.configureTestingModule({
声明:[DriversListComponent],
导入:[SmartadminModule,
SmartadminDatatableModule,
MyDatePickerModule,
公共模块,
选择模块,
反应形式模块,
FormsModule,
//路线,
DataTableModule,
MyDatePickerModule,
浏览器模块,
//错误模块,
核心模块,
HttpModule,
RouterTestingModule.withRoutes([{
路径:“”,组件:DriversListComponent
}])],
模式:[无错误模式],
供应商:[
驾驶员服务,
模拟后端,
{provide:XHRBackend,useClass:MockBackend}
]
})
.compileComponents();
路由器=测试台.get(路由器);
fixture=TestBed.createComponent(DriversListComponent);
driverListComponent=fixture.componentInstance;
driverService=TestBed.get(driverService);
mockBackend=TestBed.get(mockBackend);
fixture.detectChanges();
}));
it('应定义驱动程序服务',()=>{
expect(driverService.toBeDefined();
});
它('已加载驱动程序列表页',()=>{
expect(driverListComponent.toBeTruthy();
});
描述('功能',()=>{
它('应该导航到传入的驱动程序的driver.id的更新页面。',()=>{
间谍(路由器,“导航”);
goToUpdateDriverDetials(MockDriverArray[0]);
expect(router.navigate).tohavebeencall();
期望(router.navigate).toHaveBeenCalledTimes(1);
期望(router.navigate).toHaveBeenCalledWith(['/drivers/updateDriver',MockDriverArray[0].id]);
});
})
});
执行spec文件时,它抛出一个错误ReferenceError:endponitConfig未定义

import { Component, Type, OnInit, ViewEncapsulation, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { Http, Response, Headers } from '@angular/http';
import { DriverService } from '../../services/driver.service';

import { endponitConfig } from '../../../../environments/endpoints';


@Component({
  templateUrl: './drivers.list.component.html',
})
export class DriversListComponent {
  //calling const form endpoint file
  let driverEndpoint=endponitConfig.DRIVER_API_ENDPOINT;
    //logic 
}
ReferenceError: endponitConfig is not defined
    at Plugin.init (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:145039:22)
    at new Plugin (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:144781:14)
    at HTMLElement.<anonymous> (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:146128:48)
    at Function.each (http://localhost:9876/base/node_modules/jquery/dist/jquery.min.js?1055018c28ab41087ef9ccefe411606893dabea2:2:2715)
    at r.fn.init.each (http://localhost:9876/base/node_modules/jquery/dist/jquery.min.js?1055018c28ab41087ef9ccefe411606893dabea2:2:1003)
    at r.fn.init.Array.concat.$.fn.(anonymous function) [as jarvisWidgets] (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:146123:21)
    at WidgetsGridComponent.Array.concat.WidgetsGridComponent.ngAfterViewInit (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:128191:51)
    at callProviderLifecycles (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11542:18)
    at callElementProvidersLifecycles (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11517:13)
    at callLifecycleHooksChildrenFirst (http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11501:17)
ReferenceError:未定义endponitConfig
在Plugin.init(http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:145039:22)
在新插件上(http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:144781:14)
在HTMLElement。(http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:146128:48)
在功能上,每个(http://localhost:9876/base/node_modules/jquery/dist/jquery.min.js?1055018c28ab41087ef9ccefe411606893dabea2:2:2715)
在r.fn.init.每个(http://localhost:9876/base/node_modules/jquery/dist/jquery.min.js?1055018c28ab41087ef9ccefe411606893dabea2:2:1003)
在r.fn.init.Array.concat.$.fn.(匿名函数)[作为jarvisWidgets](http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:146123:21)
位于WidgetsGridComponent.Array.concat.WidgetsGridComponent.ngAfterViewInit(http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:128191:51)
在callProviderLifecycles(http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11542:18)
在callElementProvidersLifecycles(http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11517:13)
在callLifecycleHooksChildrenFirst(http://localhost:9876/base/src/test.ts?32930bead8e68a3814014a7f2e341a3b291fe038:11501:17)
请帮忙


对于angular中的单元测试用例来说是新的

您将其声明为
export const endponitConfig
,但是您确实声明了
endponitConfig.DRIVER\u API\u ENDPOINT='/DRIVER'
,我认为这是一个问题。我已经更新了代码。为测试目的,指定了常数。。仍然是同一个问题..你能不能也发布你的错误的跟踪信息。。帮帮我。对不起,我没有访问图像(公司代理)的权限。及