Webpack сжимает имена путей

Это их плагин webpack, который может изменить выходные строковые пути, чтобы быть более короткими путями без столкновения т. е. ./node_modules/module_a-> > ./n/a.

В выходном файле, который уже уменьшен, у меня есть много ссылок , которые выглядят такn("./node_modules/core-js/modules/_to-length.js"), даже если все вхождения node_modules можно заменитьn, я могу сохранить около 15 КБ конечного размера.

2 ответа

  1. node_modules уже присутствует в пути разрешения для webpack по умолчанию.
    require('module_a')будет искать его в каталоге модулей узла, если такой модуль отсутствует в корневом пути.

    Еще одна вещь, которую вы можете сделать, это использовать псевдоним разрешения

        resolve: {
          alias: {
            'jQuery': path.resolve(__dirname, 'node_modules/jquery/dist/jquery.js'),
            'core_modules':path.resolve(__dirname, './node_modules/core_js/modules')
          }
        }
    

    Webpack разрешит «core_modules» к пути, предусмотренному для импорта

    Далее вы можете использовать плагин замены строки или написать свой собственный плагин, чтобы сделать то, что требуется!

  2. Я опубликовал похожий вопрос на ваш (связанный) и понял, что, отключив NamedModulesPlugin в конфигурации Webpack, он на самом деле просто удалит ссылочные пути из выходных данных (не нужно скручивать их в что-то более короткое).