де конфігурація та файли створення веб-пакета create-react-app?


173

Я створюю проект ReactJS з create-react-appпакетом, і це спрацювало добре, але я не можу знайти файли та конфігурації вебпакету .

Як реагує-створює додаток працює з веб-пакетом? Де розміщені файли конфігурації веб-пакета в установці за замовчуванням create-react-app? Я не можу знайти файли конфігурації у папках свого проекту.

Я не створив конфігураційний файл заміщення. Я можу керувати налаштуваннями конфігурацій з іншими статтями, але хочу знайти звичайні конфігураційні файли.

Відповіді:


96

Якщо ви хочете знайти файли та конфігурації вебпакету, перейдіть до файлу package.json і шукайте сценарії

img

Ви побачите, що об’єкт скриптів використовує бібліотеки- реактори-скрипти

Тепер перейдіть до node_modules і шукайте react -script папки reakct -script-in-node-module

Ця реактивна скрипт / скрипт і папка реакцій / скриптів / конфігурації містить усі конфігурації веб-пакету.


1
Я бачив, але я не реагую-сценарії реж.
Мохаммед

4
Я щойно створив додаток за допомогою create-react-app, і в моєму випадку в node_modules є папка react-script. Ви можете поділитися своїм пакетом.json
Vikram Thakur

5
Ця відповідь більше не є правильною , NPM тепер рівний, тобто всі модулі знаходяться в кореневій node_modulesдиректорії
vsync

4
Фактична конфігурація веб
пакета

Найбільш поширеним випадком використання буде налаштування конфігурації веб-пакету проекту. Але якщо він знаходиться у node_modules, він буде перезаписаний у кожній установці npm, чи не так?
Бланк

59

З документації :

Вам не потрібно встановлювати чи налаштовувати такі інструменти, як Webpack чи Babel. Вони заздалегідь налаштовані та приховані, щоб ви могли зосередитись на коді.

Якщо ви хочете отримати доступ до конфігураційних файлів, потрібно витягнути його, запустивши:

npm run eject

Примітка: це одностороння операція. Після викидання ви вже не можете повернутися!

У більшості сценаріїв найкраще не викидати та намагатися знайти спосіб змусити вас працювати іншим способом. Таким чином, ви можете оновити свої залежності через create-react-appі не мати справу з пеклами залежностей Webpack.


6
Я знаю, що це приховано, але я хочу знати, де вони, і як реагувати-створювати-додаток обробляти цю здатність?
Мохаммед

Тоді вам, мабуть, доведеться подивитися вихідний код. Я не впевнений
klugjo

2
@Mohammad замовте джерело для 'react-script', ви можете знайти всю конфігурацію там
Jose Munoz

1
Не відповідає на запитання, але допомогла мені незалежно
Курячий суп

33

На цю сторінку приходить багато людей з метою знайти конфігурацію та файли веб-пакету, щоб додати їм власну конфігурацію. Ще один спосіб досягти цього без запуску npm run eject- це використовувати провідну реакцію-додаток . Це дозволяє перезаписати конфігураційний файл веб-пакета без вилучення.


6
Це все-таки краще рішення? Існує це попередження про повторний провідний проект: github.com/timarney/react-app-rewired#rewire-your-app- : "Станом на Create React App 2.0, цей репо" в цей момент "здебільшого підтримується громадою. .. Примітка. Я особисто використовую next.js або Razzle, які підтримують користувальницький Webpack поза коробкою. "
Ентоні Конг

24

Якщо припустити, що ви не хочете витягувати, і ви просто хочете подивитися на конфігурацію, в якій ви їх знайдете /node_modules/react-scripts/config

webpack.config.dev.js. //used by `npm start`
webpack.config.prod.js //used by `npm run build`


10

Ви можете знайти його в папці / config .

Коли ви виймаєте, ви отримуєте повідомлення типу:

 Adding /config/webpack.config.dev.js to the project
 Adding /config/webpack.config.prod.js to the project


3

Спробуйте вийняти конфігураційні файли, запустивши:

npm run eject

тоді ви знайдете конфігураційну папку, створену у вашому проекті. Ви знайдете файли конфігурації веб-пакета init.


0

Я знаю, що вже досить пізно, але для майбутніх людей, які натрапляють на це питання, якщо ви хочете отримати доступ до конфігурації веб-пакету CRA, іншого способу, крім вас, не потрібно запускати:

$ npm run eject

Однак, викидаючи, ви позбавитесь від конвеєра оновлень CRA, тому з точки викиду вам доведеться підтримувати його самостійно.

Я не раз стикався з цією проблемою, і тому я створив шаблон для реагування на додатки, які мають більшу частину того ж конфігурації, що і CRA, але також додаткові переваги (наприклад, стильові компоненти, випробувальний модульний тест, Travis ci для розгортань, красивіше , ESLint тощо) для полегшення обслуговування. Перевірте репо .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.