#angular #service #components
#angular #Обслуживание #Компоненты
Вопрос:
ОШИБКА в src/app/header1/header1.component.ts:3:30 — ошибка TS2306: файл ‘F:/Angular-projects/lawyer-listing/src/app/services/state.service.ts «это не модуль.
3 import { StateService } from '../services/state.service';
~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/app/app.module.ts:40:30 - error TS2306: File 'F:/Angular-projects/lawyer-listing/src/app/services/state.service.ts' is not a module.
40 import { StateService } from './services/state.service';
~~~~~~~~~~~~~~~~~~~~~~~~~~
Комментарии:
1. вы экспортировали этот сервис или использовали @Injectable({ providedIn:’root’ }) выше класса?, вы создали два разных сервиса с одинаковым именем? если это так, переименуйте один из них
Ответ №1:
Вы не можете импортировать сервис много раз, также вам нужно создать свой сервис injectable
, для нескольких сервисов вы можете определить сервисы, как показано ниже, или создать methods
в рамках сервиса.
--cart
-- cart.component.ts
-- ***
-- yourServiceFolder
-- state.service.ts
-- another.service.ts
state.service.ts
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class StateService {
myServiceMethod(){
//return
}
}
cart.component.ts
import { Component, OnInit, Input } from '@angular/core';
import { StateService } from '../yourServiceFolder/state.service';
import { AnotherService } from '../yourServiceFolder/another.service';
***
constructor(
private stateService: StateService,
private anotherService: AnotherService
) { }