【发布时间】:2020-03-09 12:12:21
【问题描述】:
如果我在InputValidatorBinding 中指定我的泛型采用字符串文字类型,并且该泛型类型用于另一个泛型类型为字符串类型的类中,那么为什么会出现编译错误?它们本质上不一样吗?唯一的区别是InputValidatorBinding 具有更严格的约束,而EventAggregator 更宽松。有没有办法完成我想做的事情?
type TextboxEvents = 'OnBlur' | 'WhileTyping' | 'WhileTypingThrottled';
type FormEvents = 'OnFormSubmit';
type DatepickerEvents = 'OnSelectDate' | 'OnCloseCalendar';
type WhenToProcessRule = TextboxEvents | FormEvents | DatepickerEvents;
class EventAggregator<T extends string> {
}
class InputValidatorBinding<T = WhenToProcessRule> {
protected readonly eventAggregator: EventAggregator<T>;
}
【问题讨论】:
标签: typescript generics