Невозможно получить доступ к «компоненту» перед инициализацией. Круглая зависимость в испытании жасмина. Угловой 17Javascript

Форум по Javascript
Ответить Пред. темаСлед. тема
Anonymous
 Невозможно получить доступ к «компоненту» перед инициализацией. Круглая зависимость в испытании жасмина. Угловой 17

Сообщение Anonymous »

In the example below, after running ng test --include my-component.component.spec.ts, I'm getting this error:

An error was thrown in afterAll Uncaught ReferenceError: Cannot access
'MyComponentComponent' before initialization

I think this is due to a circular Зависимость, потому что мой компонент получает доступ к файлу маршрута, на котором ссылается сам компонент.

Код: Выделить всё

import {Component, OnInit} from '@angular/core';
import {myRoutes} from './my-routes';

@Component({
selector: 'mi-component',
template: ``,
})
export class MyComponentComponent implements OnInit {
ngOnInit(): void {

}

routesModification() {
const routes = myRoutes;
routes[0].path = '/new-route';
}
}
my-component.component.spec.ts

Код: Выделить всё

import {ComponentFixture, TestBed} from '@angular/core/testing';
import {MyComponentComponent} from './my-component.component';

describe('MyComponentComponent class', () => {
let component: MyComponentComponent;
let fixture: ComponentFixture;
beforeEach(async () => {
await TestBed.configureTestingModule({
declarations: [MyComponentComponent],
imports: [],
providers: [],
}).compileComponents();

fixture = TestBed.createComponent(MyComponentComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});

it('El componente deberia estar creado correctamente', () => {
expect(component).toBeTruthy();
});
});
my-routes.ts
import {Routes} from '@angular/router';
import {MyComponentComponent} from './my-component.component';

export const myRoutes: Routes = [
{
path: '',
component: MyComponentComponent,
},
];
< /code>
Мне нужно исправить это так, чтобы тест прошел, не касаясь компонента или файлов маршрута, которые мне не разрешают. Это проблема, которая возникает только тогда, когда я запускаю тест индивидуально, когда я запускаю приложение или когда я запускаю NG Test во всем мире, нет такого сообщения.

Подробнее здесь: https://stackoverflow.com/questions/795 ... in-jasmine
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Javascript»