As of today the Input, Output, HostBinding and HostListener are added to the propMetadata property of a RegisteredType.
As a result Property does not generate setters and Event does not generate getters.
I think that a best way to handle them would be:
- to merge the info into the metadata
- to not record the property decorator on the
RegisteredType
@Component({})
class Cmp {
@Input() pa;
@Input('pb-name') pb;
@Output() ea;
@Output('EventName') eb;
@HostBinding('hpa') toHost;
@HostListener('event', [exp1, exp2]) handleEvent(a1, a2) { ... }
}
// should lead to the same metadata as:
@Component({
properties: ['pa', 'pb: pb-name'],
events: ['ea', 'eb: EventName'],
host: {
'hpa': 'toHost',
'(event)': 'handleEvent(exp1, exp2)'
}
})
class Cmp {}
/cc @vsavkin
As of today the
Input,Output,HostBindingandHostListenerare added to thepropMetadataproperty of aRegisteredType.As a result
Propertydoes not generate setters andEventdoes not generate getters.I think that a best way to handle them would be:
RegisteredType/cc @vsavkin