类型 'import("c:/Users/hp/Desktop/Angular/gametask1/src/app/models/Event").Event[]' 不可分配给类型 'Event[]'
Type 'import("c:/Users/hp/Desktop/Angular/gametask1/src/app/models/Event").Event[]' is not assignable to type 'Event[]'
当我尝试将 firebase 获取的事件存储在参数中时,我的组件文件中出现以下错误。参数已正确获取,但我无法存储它们。我应该对 运行 代码进行哪些更改?:-
Type 'import("c:/Users/hp/Desktop/Angular/gametask1/src/app/models/Event").Event[]' is not assignable to type 'Event[]'.
Type 'Event' is missing the following properties from type 'Event': bubbles, cancelBubble, cancelable, composed, and 18 more.
Event.ts:-
export interface Event {
id: string;
code: string;
name: string;
password: string;
pollCat: string;
}
events.service.ts:-
import { Injectable } from '@angular/core';
import { AngularFirestore , AngularFirestoreCollection, AngularFirestoreDocument} from 'angularfire2/firestore';
import { Event } from '../models/Event';
import { Observable } from 'rxjs';
@Injectable({
providedIn: 'root'
})
export class EventsService {
eventsCollection : AngularFirestoreCollection<Event>;
events: Observable<Event[]>;
constructor(public afs: AngularFirestore) {
this.events = this.afs.collection<Event>('Events').valueChanges();
}
getEvents()
{
return this.events;
}
}
events.component.ts:-
import { Component, OnInit } from '@angular/core';
import { EventsService } from 'src/app/services/events.service';
@Component({
selector: 'app-events',
templateUrl: './events.component.html',
styleUrls: ['./events.component.css']
})
export class EventsComponent implements OnInit {
events: Event[];
constructor(public eventsService: EventsService) { }
ngOnInit() {
this.eventsService.getEvents().subscribe(events => {
this.events = events;
});
}
}
您没有将正确的 Event
界面导入您的组件。
将此行添加到您的 events.component.ts
import { Event } from '../models/Event';
它编译是因为 Event 也是一个全局接口,但它不是您想要使用的接口。
如果您不想要这些接口,请为您的接口使用不同的名称'conflicts'。
当我尝试将 firebase 获取的事件存储在参数中时,我的组件文件中出现以下错误。参数已正确获取,但我无法存储它们。我应该对 运行 代码进行哪些更改?:-
Type 'import("c:/Users/hp/Desktop/Angular/gametask1/src/app/models/Event").Event[]' is not assignable to type 'Event[]'.
Type 'Event' is missing the following properties from type 'Event': bubbles, cancelBubble, cancelable, composed, and 18 more.
Event.ts:-
export interface Event {
id: string;
code: string;
name: string;
password: string;
pollCat: string;
}
events.service.ts:-
import { Injectable } from '@angular/core';
import { AngularFirestore , AngularFirestoreCollection, AngularFirestoreDocument} from 'angularfire2/firestore';
import { Event } from '../models/Event';
import { Observable } from 'rxjs';
@Injectable({
providedIn: 'root'
})
export class EventsService {
eventsCollection : AngularFirestoreCollection<Event>;
events: Observable<Event[]>;
constructor(public afs: AngularFirestore) {
this.events = this.afs.collection<Event>('Events').valueChanges();
}
getEvents()
{
return this.events;
}
}
events.component.ts:-
import { Component, OnInit } from '@angular/core';
import { EventsService } from 'src/app/services/events.service';
@Component({
selector: 'app-events',
templateUrl: './events.component.html',
styleUrls: ['./events.component.css']
})
export class EventsComponent implements OnInit {
events: Event[];
constructor(public eventsService: EventsService) { }
ngOnInit() {
this.eventsService.getEvents().subscribe(events => {
this.events = events;
});
}
}
您没有将正确的 Event
界面导入您的组件。
将此行添加到您的 events.component.ts
import { Event } from '../models/Event';
它编译是因为 Event 也是一个全局接口,但它不是您想要使用的接口。
如果您不想要这些接口,请为您的接口使用不同的名称'conflicts'。