Ошибка при попытке развернуть проект React.js на GitLab

Я отправил свой код в GitLab, и все было в порядке, но когда я пытаюсь развернуть свой проект React.js в GitLab, я получаю следующую ошибку:

Раньше я развернул этот проект на GitHub, и все было в порядке.

мой код package.json:

{
  "name": "app",
  "version": "0.1.0",
  "private": true,
  "homepage": "https://groupname.gitlab.io/projectName/",
  "dependencies": {
    "ellipsis-tooltip-react-chan": "^1.1.1",
    "gh-pages": "^3.1.0",
    "modal-simple": "^1.0.19",
    "node-sass": "^5.0.0",
    "paginering": "^1.0.6",
    "react": "^17.0.1",
    "react-dom": "^17.0.1",
    "react-scripts": "4.0.1",
    "reactjs-popup": "^2.0.4",
    "recharts": "^1.8.5",
    "styled-components": "^5.2.1",
    "web-vitals": "^0.2.4"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "deploy": "gh-pages -d build",
    "predeploy": "npm run build"
  },
  "eslintConfig": {
    "extends": [
      "react-app",
      "react-app/jest"
    ]
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}

мой файл .gitlab-ci.yml

я нашел это решение на GitHub, но оно не работает для меня

image: node:7.9.0 # change to match your node version

cache:
  paths:
    - node_modules/

before_script:
  - npm install

test:
  stage: test
  script:
    - CI=true npm test

pages:
  stage: deploy
  script:
    - CI=true npm run build
    - rm -rf public
    - mv build public
  artifacts:
    paths:
      - publiC# GitLab pages serve from a 'public' directory
  only:
    - master # run on master branch

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
1
0
520
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я решил эту проблему. Это происходило потому, что моя настоящая версия узла (npm) не была такой, как в моем файле .gitlab-ci.yml.

Требуется печать node --version в терминале, и он отображает мою текущую версию узла (в моем случае это была 12.18.3)

Я меняю свой файл .gitlab-ci.yml на

image: node:12.18.3 # change to match your project's node version

cache:
  paths:
    - node_modules/

before_script:
  - rm -rf build
  - CI=false npm install

pages:
  stage: deploy
  script:
    - CI=false npm run build
    - rm -rf public
    - cp build/index.html build/404.html
    - mv build public
  artifacts:
    paths:
      - public
  only:
    - master

И все было развернуто

Другие вопросы по теме