Запуск скриптов React приводит к непредвиденной ошибке токена - PullRequest
1 голос
/ 13 мая 2019

Я использовал create-react-app, чтобы загружать приложения реагировать все это время. Но сегодня я сталкиваюсь с действительно странной проблемой. После загрузки моего приложения с create-react-app. После запуска npm start

я столкнулся с проблемой ниже
rbac-tutorial-app/node_modules/@hapi/joi/lib/types/object/index.js:254
                        !pattern.schema._validate(key, state, { ...options, abortEarly:true }).errors) {
                                                                ^^^

SyntaxError: Unexpected token ...
    at createScript (vm.js:74:10)
    at Object.runInThisContext (vm.js:116:10)
    at Module._compile (module.js:533:28)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (rbac-tutorial-app/node_modules/@hapi/joi/lib/types/func/index.js:5:20)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! rbac-tutorial-app@0.1.0 start: `react-scripts start`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the rbac-tutorial-app@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

я уже пробовал - Удаление package.lock.json и удаление узловых модулей и запуск npm install с последующим npm start, но проблема остается той же. - Изменение версии моего узла и npm.

Я использую версию NPM -> 6.9.0 Используемая версия узла -> v8.0.0

Ниже мой package.json файл

{
  "name": "rbac-tutorial-app",
  "version": "0.1.0",
  "private": true,
  "devDependencies": {
    "babel-cli": "^6.26.0",
    "babel-core": "^6.26.0",
    "babel-plugin-transform-class-properties": "^6.24.1",
    "babel-plugin-transform-object-rest-spread": "^6.26.0",
    "babel-preset-env": "^1.6.1",
    "babel-preset-react": "^6.24.1"
  },
  "dependencies": {
    "react": "^16.8.6",
    "react-dom": "^16.8.6",
    "react-router": "^5.0.0",
    "react-router-dom": "^5.0.0",
    "react-scripts": "3.0.1"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}

Любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 13 мая 2019

После нескольких разочаровывающих часов, пытаясь найти ответы и пробуя разные подходы, я понял, что это была не проблема с моим кодом, а скорее проблема при загрузке с create-react-app с использованием node version v8.0.0.

Итак, я удалил весь проект и выполнил следующие шаги, которые решили мою проблему -

  1. Удалил весь проект. Поскольку я до сих пор не написал много кода, поэтому я просто сделал это. Если вы уже написали много кода, сделайте резервную копию.
  2. Я установил NVM(Node Version Manager). Я использовал эту ссылку Как установить NVM в Ubuntu , чтобы установить то же самое.
  3. После установки nvm используйте nvm install 12.0.0(or the node version > 8.0.0 which you would like to use). Это было на самом деле проблема для меня. Чтобы create-react-app успешно загрузился, вы должны использовать node version > 8.0.0.
  4. После этого я использую nvm use 12.0.0(or the node version which you have recently installed).
  5. Проверьте версию своего узла, используя node -v. Он должен показать версию узла, которую вы попросили использовать на шаге 4.
  6. Вот и все. Теперь вы должны использовать create-react-app и снова загрузить приложение.

Это сработало как очарование для меня. Надеюсь, что кто-то сталкивается с той же проблемой найдет это полезным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...