Angular8 Круговая зависимость обнаружена в библиотеке - PullRequest
0 голосов
/ 09 июля 2020

Итак, у меня есть компонент ' NodeComponent ' и служба « DataService », в NodeComponent мне нужно внедрить DataService, а в DataService мне нужно использовать NodeComponent для динамической обработки. c создает компонент, тогда эти две части, вероятно, импортируют друг друга , и эти части находятся в библиотеке angular; Затем у меня обнаружена круговая зависимость , но до того, как я поместил эти части в библиотеку, они были в моем обычном проекте angular, и нет предупреждения о круговой зависимости, что меня смутило. В то время как в приложении циклический импорт в порядке, но не в библиотеке, это определенное ограничение компиляции или я могу что-то сделать, чтобы этого избежать?

снимок кода:

NodeComponent

import {DataService} from './data.service'

@Component({...})
export class NodeComponent {
  ...
  constructor(private dataService: DataService) {}
  
  someFunctionNeedToCallDataService() {
    ...
  }
}

DataService

import {NodeComponent} from './node.component'

@Injectable()
export class DataService {
  private cache: Map<string, NodeComponent>;
  ...

  constructor(){}
  someMethodThatIsCreatingComponent() {
    ...
  }
  ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...