此“反应脚本弹出”命令有什么作用?

reactjs React.js

卡卡西理查德

2020-03-13

npm run eject命令做什么?我确实了解其他命令的功能,例如启动,构建,测试。但是不知道弹出。

第1386篇《此“反应脚本弹出”命令有什么作用?》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

2个回答
Green小宇宙伽罗 2020.03.13
npm run eject

Note: this is a one-way operation. Once you eject, you can’t go back!

If you aren’t satisfied with the build tool and configuration choices, you can eject at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (Webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.

You don’t have to ever use eject. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.

link to documentation


Alternatives to Ejecting

Ejecting lets you customize anything, but from that point on you have to maintain the configuration and scripts yourself. This can be daunting if you have many similar projects. In such cases instead of ejecting we recommend to fork react-scripts and any other packages you need. This article dives into how to do it in depth. You can find more discussion in this issue.

十三番长 2020.03.13

create-react-app封装了它在内部使用的所有npm模块,因此您的package.json将非常干净和简单,而您不必担心它。

但是,如果您想开始做更复杂的事情,并安装可能与在后台使用的create-react-app模块交互的模块,则这些新模块需要知道可用的内容,而不是可用的,这意味着您需要进行create-react -app取消摘要。

从本质上讲,这就是react-scripts eject作用。它将停止隐藏引擎盖下已安装的内容,而是将这些内容弹出到项目的package.json中,以供所有人查看。

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android