# eject
打開 `package.json` 可以看到以下代碼:
```json
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
```
其中有一個 eject ,是干什么的?
經過查閱,得到了答案:
eject( 彈射) 命令做的事情, 就是把潛藏在 react- scripts 中的一系列技術棧配置都“ 彈射” 到應用的頂層, 然后我們就可以研究這些 配置細節了, 而且可以更靈活地定制應用的配置,不過特別注意,整個過程是不可逆的,
```
npm run eject
```
eject后的目錄結構長這樣:
:-: 
可以看到,webpack配置文件已經被釋放了,而且再次打開 `package.json`,可以看到很多配置也有了變化:
```json
"scripts": {
"start": "node scripts/start.js",
"build": "node scripts/build.js",
"test": "node scripts/test.js --env=jsdom"
}
```
- 簡介
- 第一章 React入門
- 1.1 創建一個React項目
- 1.2 組件
- 1.3 JSX
- 1.4 eject
- 1.5 渲染
- 第二章 React組件
- 2.1 組件定義
- 2.2 數據處理
- 2.2.1 props
- 2.2.2 state
- 2.3 生命周期
- 2.3.1 裝載過程
- 2.3.2 更新過程
- 2.3.3 卸載過程
- 2.4 事件處理
- 2.5 條件渲染
- 2.6 列表渲染
- 第三章 React高級
- 3.1 靜態類型檢查
- 3.1.1 flow
- 3.1.2 typescript
- 3.2 React Developer Tools
- 第四章 Redux狀態管理
- 4.1 安裝與配置
- 4.2 一個簡單的計數器開始
- 4.3 Store
- 4.3.1 獲取state
- 4.3.2 subscribe
- 4.4 Action
- 4.4.1 Action Creators
- 4.5 Reducer
- 4.5.1 Reducer 的拆分
- 4.6 與其他狀態管理工具的對比
- 第五章 React-Router路由
- 參考資料