Изменить старое приложение React для работы с React Dev Tools - PullRequest
1 голос
/ 12 февраля 2020

Я новичок в приложениях React, поэтому извините, если на мой вопрос есть простой ответ. Я провел последние несколько дней с Google и не нашел решения для моего вопроса.

На новой должности меня попросили изменить текущее приложение React. Суть в том, что это приложение было создано до моего времени и устарело. Приложение не позволяет создавать сборки. А поскольку он не позволяет создавать сборки, наша команда разработчиков не может видеть расположение компонентов, реквизиты или состояние вместе с любыми другими полезностями, предоставляемыми инструментами React Dev.

Мой вопрос: как сделать Я заставляю мое приложение работать должным образом с помощью инструментов React Dev?

Другие детали, которые могут помочь: Файлы расположены в ABC/app/src/common Обычно здесь, у моего работодателя, это может привести к URL-адресу: www.ABC.com/app/. Тем не менее, по некоторым причинам, это не так, как все настроено.

Вместо этого приложение обслуживается из субдомена URL: app.XYZ.com Также обратите внимание, что URL www.XYZ.com не является приложением React - (не уверен, что это актуально)

В основном сценарии сборки создают пакет, а файлы .min перемещаются из папки ABC/app/src/common в app.XYZ/.

пакет. JSON:

  "name": "ABC-app",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@fortawesome/fontawesome-svg-core": "^1.2.0-14",
    "@fortawesome/free-solid-svg-icons": "^5.1.0-11",
    "@fortawesome/react-fontawesome": "0.1.0-11",
    "ajv": "^6.0.0",
    "alertifyjs": "^1.11.2",
    "axios": "^0.18.0",
    "babel-polyfill": "^6.26.0",
    "connected-react-router": "^4.4.1",
    "dateformat": "^3.0.3",
    "deep-freeze": "0.0.1",
    "fast-deep-equal": "^2.0.1",
    "fuse.js": "^3.4.6",
    "history": "^4.7.2",
    "i": "^0.3.6",
    "moment": "^2.22.2",
    "node-sass-chokidar": "^1.3.3",
    "npm": "^6.2.0",
    "prop-types": "^15.6.2",
    "react": "^16.5.0",
    "react-collapse": "^4.0.3",
    "react-dom": "^16.4.1",
    "react-html-parser": "^2.0.2",
    "react-loading": "^2.0.3",
    "react-motion": "^0.5.2",
    "react-redux": "^5.0.7",
    "react-router": "^4.3.1",
    "react-router-dom": "^4.3.1",
    "react-router-redux": "^4.0.8",
    "react-scripts": "^1.1.4",
    "react-select": "^2.0.0",
    "react-table-container": "^2.0.1",
    "react-topbar-progress-indicator": "^2.0.0",
    "react-transition-group": "^2.4.0",
    "react-virtualized": "^9.20.1",
    "redux": "^3.7.2",
    "redux-thunk": "^2.3.0"
  },
  "scripts": {
    "build-css": "node-sass-chokidar src/ -o src/",
    "watch-css": "npm run build-css && node-sass-chokidar src/ -o src/ --watch --recursive",
    "start": "yarn run build-css && react-scripts build && yarn run move-js && yarn run move-css",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject",
    "commit": "react-scripts build && yarn run move-js && yarn run move-css",
    "move-js": "cp ./build/static/js/main.*.js ../../app.XYZ.com/assets/js/main.js",
    "move-css": "cp ./build/static/css/main.*.css ../../app.XYZ.com/assets/css/main.css"
  },
  "proxy": "http://dev-app.XYZ.com/",
  "devDependencies": {
    "eslint": "^5.7.0",
    "eslint-config-airbnb": "^17.1.0",
    "eslint-plugin-import": "^2.14.0",
    "eslint-plugin-jsx-a11y": "^6.1.2",
    "eslint-plugin-react": "^7.11.1",
    "redux-devtools": "^3.4.1",
    "redux-logger": "^3.0.6",
    "why-did-you-update": "^0.1.1"
  },
  "browserslist": {
    "development": [
      "last 2 chrome versions",
      "last 2 firefox versions",
      "last 2 edge versions"
    ],
    "production": [
      ">0.25%",
      "not op_mini all",
      "ie 11"
    ]
  }
}

Ответы [ 2 ]

1 голос
/ 12 февраля 2020

Попробуйте запустить react-scripts start в папке проекта root.

Приложение должно открыть новое окно браузера в http://localhost: 3000 - тогда, если у вас установлено расширение React DevTools Chrome, вы сможете получить доступ к вкладке React DevTools

0 голосов
/ 19 февраля 2020

После некоторого исследования и благодаря @JonathanIrwin и @DrewReese я заметил, что с файлом in package. json, внутри подобъекта scripts есть scripts.start. Это перезаписывает команду запуска по умолчанию. Таким образом, когда команда npm start или yarn run start выполняется, узел запускает scripts.start, который читает:

"start": "yarn run build-css && react-scripts build && yarn run move-js && yarn run move-css",    

Чтобы исправить это, добавьте новый сценарий, читающий:

"dev-start": "react-scripts start",

делает работу Для выполнения этого скрипта любой может запустить команду yarn run dev-start или npm dev-start из терминала.

...