foo не вырезается, а надо
Это же неправильно.
У тебя же две переменные экспортируеются. Что делать коду, который импортирует foo? :)
ну да, ща поправлю
поправил: let bar = (x) => 7 * x; let foo; foo = (x) => 5 * x; foo = bar; export {foo, bar} —> let bar = (x) => 7 * x; let foo = bar; export {foo, bar}
врочем это просто делается вручную - 1. разобрать в ast 2. выкинуть одинаковые присвоения 3. собрать в js просто это то чем минификаторы/шейкеры и занимаются
А второй код — это то, что ты хочешь, или то, что даёт минификатор?
то что хочу, минификаторы не выкидывают лишнюю строку
чтобы оно вырезалось нужно знание других файлов в которых точно будет известно что нет импортов foo
Я так понял, то, что после --> — это то, что Олег хочет, а не то, что даёт минификатор. Потому что если это то, что даёт минификатор, ситуация всё еще не изменилась с прошлого раза. Есть экспорт двух переменных.
будут импорты foo, но они же будут юзать только последнее значение
Можно просто не писать такой код))
он итак не пишеться, он генерируется
а чем он так генерируется?))
(будет) фреймворком, это для того чтобы бандл был меньше
так он же генерирует больше, а не меньше 🧐 и вы просите помочь убрать неиспользуемый код из сгенерированного
Обсуждают сегодня