O que o npm run eject
comando faz? Eu entendo o que outros comandos fazem, como iniciar, construir, testar. Mas nenhuma ideia sobre ejetar.
reactjs
webpack
create-react-app
react-scripts
Ishan Patel
fonte
fonte
Respostas:
create-react-app encapsula todos os módulos npm que está usando internamente, para que seu package.json seja muito limpo e simples sem você ter que se preocupar com isso.
No entanto, se você quiser começar a fazer coisas mais complexas e instalar módulos que podem interagir com os módulos que o create-react-app está usando nos bastidores, esses novos módulos precisam saber o que está disponível e o que não está, o que significa que você precisa criar-reagir -app des-abstraí-los.
Isso, em essência, é o que
react-scripts eject
faz. Ele vai parar de esconder o que está instalado sob o capô e, em vez disso, ejetará essas coisas no package.json do seu projeto para que todos vejam.fonte
Nota: esta é uma operação unilateral. Depois de você
eject
, você não pode voltar!Se você não estiver satisfeito com a ferramenta de construção e as opções de configuração, poderá fazê-lo
eject
a qualquer momento. Este comando removerá a dependência única de compilação de seu projeto.Em vez disso, ele copiará todos os arquivos de configuração e as dependências transitivas (Webpack, Babel, ESLint, etc) diretamente para o seu projeto para que você tenha total controle sobre eles. Todos os comandos, exceto
eject
ainda funcionarão, mas eles irão apontar para os scripts copiados para que você possa ajustá-los. Neste ponto, você está sozinho.Você nunca precisa usar
eject
. O conjunto de recursos selecionados é adequado para implantações pequenas e médias, e você não deve se sentir obrigado a usar este recurso. No entanto, entendemos que esta ferramenta não seria útil se você não pudesse personalizá-la quando estiver pronto para ela.link para documentação
Alternativas para ejetar
Ejetar permite que você personalize qualquer coisa, mas a partir desse ponto você tem que manter a configuração e os scripts você mesmo. Isso pode ser assustador se você tiver muitos projetos semelhantes. Nesses casos, em vez de ejetar, recomendamos o fork
react-scripts
e quaisquer outros pacotes de que você precisa. Este artigo aprofunda como fazer isso. Você pode encontrar mais discussão nesta questão.fonte
npm install react-scripts