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 просто это то чем минификаторы/шейкеры и занимаются
А второй код — это то, что ты хочешь, или то, что даёт минификатор?
то что хочу, минификаторы не выкидывают лишнюю строку
 Alexander
                          Ponomarev
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Alexander
                          Ponomarev
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  чтобы оно вырезалось нужно знание других файлов в которых точно будет известно что нет импортов foo
Я так понял, то, что после --> — это то, что Олег хочет, а не то, что даёт минификатор. Потому что если это то, что даёт минификатор, ситуация всё еще не изменилась с прошлого раза. Есть экспорт двух переменных.
будут импорты foo, но они же будут юзать только последнее значение
Можно просто не писать такой код))
он итак не пишеться, он генерируется
а чем он так генерируется?))
(будет) фреймворком, это для того чтобы бандл был меньше
так он же генерирует больше, а не меньше 🧐 и вы просите помочь убрать неиспользуемый код из сгенерированного
Обсуждают сегодня