根据标题,情况非常简单,如果有人正在参加,则尝试将AttingingType属性添加到事件对象中(这样我就可以在视图中更改状态)。
其他说明,我正在使用Angularfire 2,返回的数据是Event []的可观察数组。当我将返回值更改为number
时,它将打印其他属性。
这是界面
return (console.log({ ...event, attendingType: currentUser.type } as eventWithAttendance));
这是ts文件的代码
export interface Event {
schoolId: string;
eventId: string;
name: string;
date: Date;
timeStart: number;
timeEnd: number;
volunteersRequired: boolean;
attendance?: Array<EventUser>;
imageUrl: string;
contactName: string;
contactPhone: number;
contactEmail: string;
description: string;
}
export interface EventUser {
id: string;
email: string;
name: string;
type: ATTENDANCE;
}
export enum ATTENDANCE {
attending = 'attending',
notAttending = 'notAttending',
volunteering = 'volunteering'
}
答案 0 :(得分:1)
问题在于数组上的.map不会更改原始数组,但会返回一个新数组。
因此,如果您进行更改:
events.map( (event) => {
收件人:
const updatedEvents = events.map( (event) => {
然后将return语句更改为:
return updatedEvents as eventWithAttendance[];