Я не уверен, что это вопрос, связанный с Angular 2 или более с самим Typescript. Но в любом случае у меня есть компонент, который испускает объект
<grid" (gridButtonClickEvent)="gridEvent($event)"></grid>
Вот как я ловлю событие
private gridEvent(event) {
console.log(event);
}
Вот формат события того, что я получаю.
{Key: value}
Так что в основном это простой объект. Я хочу вызвать функцию с именем Key
и передать value
в качестве аргумента, как это возможно? Объект Key
был бы другим, но я знаю все возможные варианты и уже зарегистрированную функцию в моем компоненте.
private Key() {}
Я пытался что-то вроде этого
private gridEvent(event) {
let eventName = Object.keys(event)[0];
window[eventName]();
}
Но он говорит
window[eventName] is not a function
window
? 2. Почему вы делаете такие вещи? Не проще ли просто передать функцию как свойство объекта? - person smnbbrv   schedule 08.02.2017