Круговые зависимости Angular (просто имя файла) - PullRequest
0 голосов
/ 03 октября 2019

Раньше у меня были отдельные файлы для интерфейсов и служб, но я объединил их в один и тот же файл, так как всегда запрашивал их вместе. т.е. user.interface.ts + user.service.ts => user.service.ts - где пользовательский интерфейс и сервис объявляются. Это делает разработку намного быстрее, не нужно открывать / требовать так много файлов.

Одна проблема, с которой я сталкиваюсь, заключается в том, что я получаю предупреждение о циклической зависимости при простом импорте интерфейса из файла (который создает файлпетля). Я предполагаю, что нет никаких проблем с этим, и это просто глупое предупреждение? Если да, есть ли способ отфильтровать эти предупреждения без фильтрации циклических служб?

Пример файла

Служба A

import { ServiceB } from '../serviceB.service';

@Injectable()
export class ServiceA {}

СлужбаB

import { C1, C2 } from '../serviceC.service';

@Injectable()
export class ServiceB {}

Сервис C

import { ServiceD } from '../serviceD.service';

export interface C1 {}

export interface C2 {}

@Injectable()
export class ServiceC {}

Сервис D

import { ServiceA } from '../serviceA.service';

@Injectable()
export class ServiceD {

1 Ответ

0 голосов
/ 03 октября 2019

Если я правильно понимаю ваш пример, ServiceB зависит от serviceC.service только для его интерфейсов C1 и C2.

Почему бы вам не переместить C1 и C2 в отдельный файл?

Таким образом

C -> D -> A -> B -> interfaces

... и ваш круг разорван.

...