web-dev-qa-db-ja.com

Reactで「npm run eject」を元に戻します

React app(create-react-appで作成)の反応CDNスクリプトでパフォーマンスをテストしようとしていましたが、私は 'npm run eject'を追加して webpack externals 依存関係がreactとreact-domになります。

webpack config<script> in index.html

...
externals: {
    react: 'React',
    'react-dom':'ReactDOM'
},
...

今、以前の状態に戻したい

gitを使用しています。この実験は別のブランチで行いました。

git checkout masterおよびnpm start

結果は迷惑でした

> [email protected] start /home/code/serverSync/myapp/ui
> react-scripts start

sh: 1: react-scripts: not found

npm ERR! Linux 4.15.0-23-generic
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "start"
npm ERR! node v8.10.0
npm ERR! npm  v3.5.2
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! [email protected] start: `react-scripts start`
npm ERR! spawn ENOENT
npm ERR! 
npm ERR! Failed at the [email protected] start script 'react-scripts start'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the myapp package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     react-scripts start
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs myapp
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls myapp
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/code/serverSync/myapp/ui/npm-debug.log

マスターブランチに戻すにはどうすればよいですか?

9
Anandhu

Create React Appアプリの--eject操作を元に戻すには、react-scriptsパッケージを追加します。お気に入りに基づいてコマンドヤーンまたはnpm パッケージマネージャー

あなたがしたこと:

$ yarn run eject/ npm run eject 
? Are you sure you want to eject? This action is permanent. (Yes/No)Yes

今の解決策は次のとおりです。

$ rm -r scripts/  //Remove Your scripts folder 
$ rm -r config/   //Remove Your config folder
$ rm -r node_modules//  //Remove Your node_modules folder

追加react-scriptsパッケージを使用して戻る

$ yarn add react-scripts / npm install react-scripts 

そして、package.jsonファイル内で"scripts"を以前の状態に変更する必要があります。

"scripts": {
+    "start": "react-scripts start",                 
+    "build": "react-scripts build",                 
+    "test": "react-scripts test --env=jsdom",       
+    "eject": "react-scripts eject"                  
-    "start": "node scripts/start.js",               
-    "build": "node scripts/build.js",                
-    "test": "node scripts/test.js --env=jsdom"      
  }

次を使用して、すべての依存関係をインストールします。

  $ yarn install / npm install 

そしてあなたは行ってもいい

$ yarn start / npm start

やった.....

8
Ashok

masterブランチにいる場合(設定は以前と同じnpm run eject)、次を試してください。

  • 削除node_module
  • npm install
  • npm start
3
Ritwick Dey