Могу ли я отключить механизм чанкинга create-реакции-приложения? - PullRequest
0 голосов
/ 29 апреля 2019

Я настраиваю свой проект приложения React с помощью create-реагировать-приложение.

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

Ответы [ 2 ]

1 голос
/ 30 апреля 2019

Я обнаружил, что вы можете отключить разбиение на блоки, установив splitChunks конфигурацию веб-пакета.Для получения более подробной информации проверьте https://github.com/facebook/create-react-app/issues/5306#issuecomment-431431877

Однако это не удалит часть contenthash из имени комплекта, и у вас останется эта случайная строка в имени.

Чтобы удалить это,перейдите на ваш webpack.config и отредактируйте имя пакета

'static/js/[name].[contenthash:8].js' => 'static/js/[name].js'

1 голос
/ 30 апреля 2019

Я не знаю, как отключить порцию, но что вы могли бы сделать, попытаться достичь своей цели

Обновиться до последней реакции и ответа, запустить команду «пряжа реагировать @ следующая реакция-дом @ далее» (или команда npm, чтобы сделать то же самое)

Теперь у вас должны быть последние версии реагирования - так что вы можете разделить код, используя React.lazy / React.Suspense, использовать хуки и т. д.

Так что теперьВы можете называть свои чанки, используя (примеры компонентов или зависимостей ниже)

 const MyComp = lazy(() =>   import(/* webpackChunkName: 'MyChunkNmame'
*/ './MyComp'), );

const myLib= await import(/* webpackChunkName: "myLib" */ 'myLib');

Если у вас есть проблема с ошибками при использовании синтаксиса импорта, вам нужно использовать плагин babel-plugin-syntax-dynamic-import.Поместите поле «babel» в ваш пакет json.

Теперь вы можете называть свои куски и реализовывать новейший способ разделения кода - надеюсь, это поможет.Вот ссылка на React.lazy React.Suspense - https://reactjs.org/blog/2018/10/23/react-v-16-6.html

...