当我尝试将接口的数据访问到组件中时,出现错误:错误TS2304:找不到名称“联系人”
当我尝试导入该接口时,它说:错误TS2307:找不到模块'../models/contacts'。
我使用了一个Interface(Contacts)使一些数据可用于组件(contact-list.component.ts)
请查看下面的代码片段,告诉我我在做什么错。我受困于过去两天的工作,请帮助
----------model contacts.ts------------
export interface Contacts {
contactsList: Contact[];
}
export interface Contact {
id: number;
name: string;
city: string;
}
-----------app.module.ts----------------
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { ContactService } from 'src/app/services/contact.service';
import { AppComponent } from './app.component';
import { ContactListComponent } from './components/contact-list/contact-
list.component';
@NgModule({
declarations: [
AppComponent,
ContactListComponent
],
imports: [
BrowserModule,
],
providers: [ContactService],
bootstrap: [AppComponent]
})
export class AppModule { }
---------------contact-list.component.ts---------------
import { Component, OnInit } from '@angular/core';
import { ContactService } from 'src/app/services/contact.service';
import { Contacts } from '../models/contacts';
@Component({
selector: 'app-contact-list',
templateUrl: './contact-list.component.html',
styleUrls: ['./contact-list.component.css']
})
export class ContactListComponent implements OnInit {
contacts;
constructor(
private contactService: ContactService
) { }
ngOnInit() {
this.contactService.getContacts().subscribe((data: Contacts) => {
this.contacts = data ? data.contactsList : [];
});
}
}
--------------------contact.service.ts--------------------
import { Injectable } from '@angular/core';
import { of, Observable } from 'rxjs';
import { Contacts } from '../models/contacts';
@Injectable({providedIn: 'root'})
export class ContactService {
contacts = {
'contactsList': [
{'id': 1, 'name': 'Rajesh', 'city': 'bangalore'},
{'id': 2, 'name': 'Aarjith', 'city': 'london'},
{'id': 3, 'name': 'Anjan', 'city': 'california'},
{'id': 4, 'name': 'David', 'city': 'delhi'}
]
};
constructor(
) { }
getContacts(): Observable<Contacts> {
return of(this.contacts);
}
}
预期输出:Rajesh Aarjith Anjan David
该操作必须来自壁画,我也遇到了同样的问题,您的代码中没有错,就像您尝试导入联系人一样import { Contacts } from '../models/contacts';
无法识别联系人,如果您尝试导入联系人一样,import { Contacts } from 'src/app/models/contacts';
那么在线ide就会造成问题。即使出现错误,您也必须已经完成提交工作。如果您尝试使用本机,则可以正常使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句