Обнаружена круговая зависимость, я ее не вижу - PullRequest
1 голос
/ 28 апреля 2020

В консоли отображается циклическое предупреждение о зависимости, но я не могу его разрешить, я знаю, что это такое, но я пытаюсь его решить, но это бесполезно.

inicio.component. ts

    import { Component } from '@angular/core';
import { searchClient } from '../../app.module';



@Component({
  selector: 'app-inicio',
  templateUrl: './inicio.component.html',
  styleUrls: ['./inicio.component.css']
})



export class InicioComponent {

  config = {
    indexName: 'items',
    searchClient
  };

  constructor() { 

  }



}

app.module.ts

    import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';

import { ReactiveFormsModule } from '@angular/forms';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';

import { HttpClientModule } from '@angular/common/http';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { MatToolbarModule, MatIconModule, MatSidenavModule, MatListModule, MatButtonModule } from  '@angular/material';

import algoliasearch from 'algoliasearch';

import { AngularFireModule } from "@angular/fire";
import { AngularFireAuthModule } from "@angular/fire/auth";
import { AngularFirestoreModule } from "@angular/fire/firestore";

import { NgAisModule } from 'angular-instantsearch';

import { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';
import { VerifyEmailComponent } from './components/verify-email/verify-email.component';
import { NavbarComponent } from './components/navbar/navbar.component';
import { LoginRegisterComponent } from './components/login-register/login-register.component';
import { InicioComponent } from './components/inicio/inicio.component';
import { UserProfileComponent } from './components/user-profile/user-profile.component';
import { PostItemComponent } from './components/post-item/post-item.component';
import { InboxComponent } from './components/inbox/inbox.component';
import { SendMsgComponent } from './components/send-msg/send-msg.component';

export const searchClient = algoliasearch(
  'hgjhg',
  'ahgjghj'
);


const routes: Routes= [
  { path: '', redirectTo: '/home', pathMatch: 'full' },
  { path: 'home', component: InicioComponent},
  { path: 'post-item', component: PostItemComponent},
  { path: 'send-msg', component: SendMsgComponent},
  { path: 'forgot-password', component:  ForgotPasswordComponent },
  { path: 'verify-email', component:  VerifyEmailComponent },
  { path: 'login-register', component:  LoginRegisterComponent },
  { path: 'user-profile', component:  UserProfileComponent }
];

@NgModule({
  declarations: [
    AppComponent,
    InicioComponent,
    UserProfileComponent,
    NavbarComponent,
    ForgotPasswordComponent,
    VerifyEmailComponent,
    LoginRegisterComponent,
    PostItemComponent,
    InboxComponent,
    SendMsgComponent
  ],
  imports: [
    RouterModule.forRoot(routes),
    NgAisModule.forRoot(),
    AngularFireModule.initializeApp(config),
    AngularFirestoreModule,
    ReactiveFormsModule,
    AngularFireAuthModule,
    BrowserModule,
    AppRoutingModule,
    BrowserAnimationsModule,
    HttpClientModule,
    MatToolbarModule,
    MatSidenavModule,
    MatListModule,
    MatButtonModule,
    MatIconModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

Проблема в этих 2 файлах, очевидно, в экспорте algoliasearch в inicio.component.ts и импорте из компонента чтобы app.module.ts объявить это, но как мне решить предупреждение? Я пробовал много разных способов.

Ответы [ 2 ]

1 голос
/ 28 апреля 2020

Переместите searchClient из модуля в его собственный файл.

App.module пытается загрузить InicioComponent, который, в свою очередь, пытается загрузить app.module, который пытается загрузить Inicion ... repeat навсегда.

1 голос
/ 28 апреля 2020

Проблема в searchClient, переместите его в файл с InicioComponent или в отдельный файл и импортируйте его в InicioComponent и AppModule.

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