Oleg
А сейчас уже ES6 давно
Anatoly
ну прям давно
Дима
Дима
Паттерн матчинг это офигенно мощная штука
Anonymous
Ммм. Как получить имя функции внутри функции, соответственно не зная ее имени?
Andrey 😼
Anonymous
Ну вот так вот)
Anonymous
типо
function test () {
return /*some magic*/
}
test() // 'test'
Kirill
но так можно в больничку загреметь
Nikolay
да, заберут
Anonymous
=D
Andrey 😼
Спойлер: никак
Andrey 😼
Не, ну, будет
Andrey 😼
Но в name будет какое-нибудь гордое «a»
Дима
Andrey 😼
А вот прокси мб и не будут подвержены этому
Serhii
код слишком красивый чтобы его обфусцировать
Andrey 😼
Но не уверен
Andrey 😼
Anonymous
Ну и нормально.
У меня какой кейс.
Функция имеет информативное название, но так же она должна возвращаться объект с полем type (например) со строкой, содержащей такое же информативное название. Как это выглядит в проде, не важно.
Сейчас это работает так, что строка прописывается отдельно. Я хочу, что бы она прописывалась автоматом
Roman
Andrey 😼
Он настолько хорошо написан, что обфускация не требуется 😹
ixplo
Andrey 😼
И так нихера никто не поймет без поллитры
Andrey 😼
Andrey 😼
И будут у тебя информативные «a» и «b»
Andrey 😼
И такое же будет попадать в type
Anonymous
Ну и нормально
Andrey 😼
Потому что только libastral ведает, как называлась функция до минификации
Anonymous
Говорю же, для продакшена не важно. Информативные названия нужны для дебагинга во время разработки
Andrey 😼
Так у тебя в разных файлах будут они одинаково называться, не?
Anonymous
Что?
Anonymous
Ты редакс не юзал, да?
Andrey 😼
Юзал и лучше бы не юзал
Serhii
еще
x?.property
назови элвис оператором
Serhii
кек
Andrey 😼
Обфускация не только имена обрезает
Andrey 😼
Но и всячески косоёбит код, чтобы хуйразберешь
Andrey 😼
В современном фронтенде с этим успешно Babel справляется, но не суть
Kirill
кстати Object.defineProperty(func, "name", { value: "func" });
не спасет ли от обфускации
Anonymous
Anonymous
А я хочу вообще 1 раз)
Anonymous
Есть идея завернуть прокси в коструктор и в конструкторе сотворить какую-то магию по выборке имени, но пока не понял как
Sergey
Anonymous
Депрекейтед
ixplo
export const {getUser} = acr не сработает, кстати? )
Sergey
ясн
Anonymous
getUser нет в acr
Anonymous
А....
Anonymous
хм
Дима
Andrey 😼
Все будут)
Разве будет переименовывать свойство, если оно явно не определено в исходном объекте?
Anonymous
ixplo
Anonymous
Сек...
Anonymous
http://jsbin.com/ciguvudeno/1/edit?js,console
Anonymous
ой, а у меня там ошибка
Anonymous
По ходу работает!
Anonymous
Чародейство!
ixplo
:) убрал лишний .getUser?
Anonymous
ага
Anonymous
Круто, спасибо!
Anonymous
От прокси мозг немного едет. Кто мог такое придумать вообще... Но круто, и, наверное, полезно
Дима
Тебе не нужно их использовать
Дима
По крайней мере пока 100%
Дима
Но у меня уже есть кейс, когда они прям идеально подойдут 😄 Но это код для отладки, к конечному юзеру прокси выпускать пока рановато — нет ине будет полифиллов и это КРАЙНЕ медленно, прям пипец как
Anonymous
Дима
Дима
Я серьезно. Не используй прокси сейчас, вообще
Anonymous
=(
Anonymous
Ок
Juan
кто юзал onesignal?