Size: a a a

Webpack — русскоговорящее сообщество

2020 March 06

jb

just boy in Webpack — русскоговорящее сообщество
Alex CherryTea
Почему вы думаете что прод или дев флаг в сборке влияет на то какой тип модуля будет выбран
Я не до конца понимаю поэтому и спрашиваю)))
источник

jb

just boy in Webpack — русскоговорящее сообщество
в конфиге webpack ключ module отвечает за "другие" настройки))
источник

A

Alex CherryTea in Webpack — русскоговорящее сообщество
Вы спросили что делаете не так но забыли сказать что вы вообще делаете
источник

jb

just boy in Webpack — русскоговорящее сообщество
Alex CherryTea
Вы спросили что делаете не так но забыли сказать что вы вообще делаете
у  меня свой пакет. Мне нужно из него импортировать что-то,  например функцию. При сборке вебпаком приложения, которое использует мой пакет в бандл попадает сборка из ключа esnext. Т.е. весь код не минифицирован и не можем быть использован в старых браузерах
источник

A

Alex CherryTea in Webpack — русскоговорящее сообщество
just boy
у  меня свой пакет. Мне нужно из него импортировать что-то,  например функцию. При сборке вебпаком приложения, которое использует мой пакет в бандл попадает сборка из ключа esnext. Т.е. весь код не минифицирован и не можем быть использован в старых браузерах
Так и должно быть, весь код должен минифицироватся приложением в котором модуль используется
источник

jb

just boy in Webpack — русскоговорящее сообщество
Alex CherryTea
Так и должно быть, весь код должен минифицироватся приложением в котором модуль используется
Тогда у меня появляются 2 вопроса.

1. Зачем тогда ключи в package.json которые явно указывают на различия в сборке пакета.

2. Почему все остальные пакеты минифицируются, а мой нет. Не верю в то, что я особенный 😂
источник

A

Alex CherryTea in Webpack — русскоговорящее сообщество
just boy
Тогда у меня появляются 2 вопроса.

1. Зачем тогда ключи в package.json которые явно указывают на различия в сборке пакета.

2. Почему все остальные пакеты минифицируются, а мой нет. Не верю в то, что я особенный 😂
Сбилженую версию пакета делают для автоматического хостинга на cdn-ах. Юзер подключает его как есть по ссылке.

Некоторые минифицируют и полифилят пакет по глупости.
Дело в том что собирая пакет в приложении только вы знаете какие браузеры вам нужны в конкретном приложении а какие нет, вы так же переиспользуете полифилы (хелперы так называемые) между пакетами
источник

jb

just boy in Webpack — русскоговорящее сообщество
Alex CherryTea
Сбилженую версию пакета делают для автоматического хостинга на cdn-ах. Юзер подключает его как есть по ссылке.

Некоторые минифицируют и полифилят пакет по глупости.
Дело в том что собирая пакет в приложении только вы знаете какие браузеры вам нужны в конкретном приложении а какие нет, вы так же переиспользуете полифилы (хелперы так называемые) между пакетами
Спасибо, буду тогда копать в сторону сборки.
источник

DK

Dmitry Koutsenko in Webpack — русскоговорящее сообщество
Добрый вечер. А где можно найти пример конфига вебпака для MPA и чтобы в webpack-dev-server было настроено проксирование - на одни URL отдаются один html и в нем один entry point,  на другие - другой html и в нем другие entry point

В доке есть пример:
entry: {
   pageOne: './src/pageOne/index.js',
   pageTwo: './src/pageTwo/index.js',
   pageThree: './src/pageThree/index.js'
 }
,
но там все три скрипта попадут в один html
источник

DK

Dmitry Koutsenko in Webpack — русскоговорящее сообщество
Ой блин, утро
источник

AM

Anton Mikhaliou in Webpack — русскоговорящее сообщество
Здравстуйте, а есть ли вообще такая возможность, чтобы генерировать вендор отдельно для каждой страницы react приложения? Грубо говоря есть лендинг сайта, где суммарный объем с учётом сжатия nginx весит 3мб и белый экран весьма долго виден(грубо говоря 20 поинтов на pagespeed google)
И нужно каким-то образом максимально облегчить сборку, чтобы весила 0 и грузилось за 0
Насколько это реально?
источник

DK

Dmitry Koutsenko in Webpack — русскоговорящее сообщество
Тебе наверное тоже MPA нужен
источник

DK

Dmitry Koutsenko in Webpack — русскоговорящее сообщество
Да вот поиск в чате не выдает ничего толком
источник

🦜

🦜 in Webpack — русскоговорящее сообщество
Anton Mikhaliou
Здравстуйте, а есть ли вообще такая возможность, чтобы генерировать вендор отдельно для каждой страницы react приложения? Грубо говоря есть лендинг сайта, где суммарный объем с учётом сжатия nginx весит 3мб и белый экран весьма долго виден(грубо говоря 20 поинтов на pagespeed google)
И нужно каким-то образом максимально облегчить сборку, чтобы весила 0 и грузилось за 0
Насколько это реально?
lazyload
источник

НВ

Никита Вьюшков in Webpack — русскоговорящее сообщество
Anton Mikhaliou
Здравстуйте, а есть ли вообще такая возможность, чтобы генерировать вендор отдельно для каждой страницы react приложения? Грубо говоря есть лендинг сайта, где суммарный объем с учётом сжатия nginx весит 3мб и белый экран весьма долго виден(грубо говоря 20 поинтов на pagespeed google)
И нужно каким-то образом максимально облегчить сборку, чтобы весила 0 и грузилось за 0
Насколько это реально?
оставить для лендинга только html - будет идеально)
источник

🦜

🦜 in Webpack — русскоговорящее сообщество
const Page = React.lazy(() => import('./Page'))
источник

🦜

🦜 in Webpack — русскоговорящее сообщество
Реакт изначально вынести в вендор чанк, чтобы грузилось

vendor
currentPage
источник

🦜

🦜 in Webpack — русскоговорящее сообщество
Anton Mikhaliou
Здравстуйте, а есть ли вообще такая возможность, чтобы генерировать вендор отдельно для каждой страницы react приложения? Грубо говоря есть лендинг сайта, где суммарный объем с учётом сжатия nginx весит 3мб и белый экран весьма долго виден(грубо говоря 20 поинтов на pagespeed google)
И нужно каким-то образом максимально облегчить сборку, чтобы весила 0 и грузилось за 0
Насколько это реально?
источник

AM

Anton Mikhaliou in Webpack — русскоговорящее сообщество
🦜
const Page = React.lazy(() => import('./Page'))
Так и сделано, все страницы через лейзи
источник

AM

Anton Mikhaliou in Webpack — русскоговорящее сообщество
Просто грубо говоря сайт делится на 3 подраздела
админка, пользовательская, и пользовательская другого вида
И получается вендор с общим кодом 3 подразделов(что как бы правильно, но по итогу добавляет много лишнего для загрузки)
источник