Думаю, что нейминги функций парсятся раньше, чем выполняется код конструктора.
Спасибо Игорь! Думаю дело в этом, тогда получается туда не возможно вставить какую-либо переменную которая позже могла бы быть скомпьютеризированна в имя метода, теряется смысл подхода и это странно... Возможно прояснится позже для чего эта фитча =)
const datesObject = arr.reduce((result, { date, value }) => ({ ...result, [date]: value }), {})
Например так можно)
Forest Ninja метод? =)) Подскажите Артём где можно?)
Нельзя сделать имя метода с динамическим именем свойства. Так как если изменится this.func - то и должен поменяться и имя метода. Если хочется зачем-то создать имя метода из переменной то можно это проделать в конструкторе - как ни будь так. Потом оно уже не поменяется.
Я ж написал выше. У вас суть в том что вы не стороннюю переменную тянете, а поле из this. Кейсы для использования { [someKey]: ... } это задачи когда ключи вам заранее не известны. В моем примере мне нужно было вывести таблицу с колонками по датам. Сами даты лежали в массиве, а компонент таблицы ждал объект с ключами, соответственно для приведения к нужному формату я этот синтаксис и использовал
Спасибо Евгений, this[this.func] даже не подумал, что можно и так =)
Здорово Артём! Немного запутано с реализацией =)) но кратко!
Обсуждают сегодня