Мне интересно, каково правильное определение типа для переменной, назначенной с перечислением внутри компонента Angular.
Рассмотрим следующую ситуацию:
@Component({
selector: 'dashboard-component',
templateUrl: './dashboard.component.html',
styleUrls: ['./dashboard.component.scss']
})
export class DashboardComponent {
componentActions = ComponentActions;
...
}
export enum ComponentActions {
ACTION_OK,
ACTION_CANCEL,
}
В основном мне нужно использоватьComponentActions
перечисление внутри шаблона моего компонента, поэтому я назначил общедоступную переменную componentActions
с помощью перечисления ComponentActions
, и я хочу указать тип этой общедоступной переменной .
. следующий код:
componentActions: ComponentActions = ComponentActions;
выдаст ошибку в tslint
:
Type 'typeof ComponentActions' is not assignable to type 'ComponentActions'
В противном случае, используя следующий код:
componentActions: typeof ComponentActions = ComponentActions;
нет ошибки от tslint
.
Мой вопрос: какой тип переменной является публичной? Достаточно использовать ключевое слово typeof
или есть определенный способ?
Заранее спасибо.