我有一个带有单个@Input元素的Angular组件:
@Input('member') member: Member;
Member
界面如下:
export interface Member {
name: string;
surname: string;
display_name: string;
positions: number[];
image_url: string;
email: string;
address: string;
office_phone: string;
phone: string;
whatsapp: string;
skype: string;
}
我想从html模板访问成员字段,例如{{ name }}
,{{ email }}
等。
没有为每个前缀。
例如,我不想不想访问这些属性,例如{{ member.name }}
,{{ member.email }}
,我喜欢快捷方式版本。
该组件将只有一个@Inpurt属性-成员对象。
有没有很好的方法来重新分配成员。 Angular组件的属性?或其他使用快捷方式的方法,我在上面提到过?
答案 0 :(得分:3)
不好的做法,但是您应该将该对象传播到组件中:
m1 = df['Status'].eq('canceled').groupby(df['Customer']).transform('all')
m2 = df['Customer'].duplicated(keep=False)
df['new_status'] = np.where(m1 & m2, 'cancelled', '')
print (df)
Customer Status new_status duplicated
0 X canceled 0
1 X canceled 1
2 X active 2
3 Y canceled 0
4 A canceled cancelled 0
5 A canceled cancelled 1
6 B active 0
7 B canceled 1
您现在可以像使用类属性一样使用它们。请注意,它将覆盖您的类上具有相同名称的任何其他属性,因此您应谨慎使用该解决方案,而应使用ngOnInit() {
Object.entries(this.member).forEach(([key, value]) => this[key] = value);
// OR
Object.assign(this, this.member);
}
。