Как установить PUBLIC_URL обратно в корень сервера для npm run build - PullRequest
0 голосов
/ 15 апреля 2019

Я сделал простое приложение реакции и хотел развернуть его.

Сначала я попробовал npm run build. Я получил "Проект был построен при условии, что он находится на корне сервера ."

Мне нужно было развернуть приложение на моем веб-сервере, поэтому я нашел решение, которое сработало: set PUBLIC_URL=http://example.com/sampleDir&&npm run build

Однако, когда я в следующий раз наберу npm run build, сообщение всегда будет The project was built assuming it is hosted at " независимо от того, какой путь я установил перед ".

Я попытался set PUBLIC_URL='root' восстановить исходное состояние. Но сообщение, которое я получил после выполнения npm run build, было не таким, как в первый раз.

Скорее он сказал: «Проект был построен, предполагая, что он размещен в root /

Если кто-нибудь знает, пожалуйста, дайте мне знать, как вернуть эту ситуацию в исходное состояние: «Проект был построен при условии, что он находится на корне сервера

1 Ответ

0 голосов
/ 17 апреля 2019

1.

К сожалению, моя командная строка не распознает 'unset':

'unset' is not recognized as an internal or external command, operable program or batch file.

(похоже, ваш способ должен работать нормально, и другие поиски в Google поддерживают это ..)Мне придется поискать об этом позже)

К счастью, сработала следующая строка:

set PUBLIC_URL=&&npm run build

Я не уверен почему ... возможно потому что яиспользуя cmder в качестве командной строки ???

2.Ваш совет package.json тоже был опробован.Мой оригинальный файл package.json был примерно таким:

"scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  }

И я изменил его на ваш:

"scripts": {
    "build": "node scripts/build.js",
    "build:sample": "PUBLIC_URL=http://example.com/sampleDir npm run build"
  }

Затем я получил сообщение об ошибке ... (Я неуверен, что именно означает эта ошибка ...)

internal/modules/cjs/loader.js:584
    throw err;
    ^

Error: Cannot find module 'C:\MyLocalDevFolder\scripts\build.js'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:582:15)
    at Function.Module._load (internal/modules/cjs/loader.js:508:25)
    at Function.Module.runMain (internal/modules/cjs/loader.js:754:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)

В любом случае, после дополнительных поисков я мог бы делать то, что я хочу, не загрязняя окружающую среду, добавив приведенный ниже код после исходного свойства "scripts" в пакете.json:

  "homepage": "http://example.com/sampleDir/",

Еще раз спасибо за совет, Толле ~ Счастливое кодирование ~~~

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