Здание с Parceljs и React?

Как мне заставить Parceljs работать с реагировать? Я использую их пример из репо, но он не будет работать.

https://github.com/parcel-bundler/examples

После того, как я запустил 'npm start', он работает и отображает страницу на localhost, как и ожидалось, но она не будет работать, когда я щелкну выведенный файл в /dist. Таким образом, страница просто пуста, когда я пытаюсь загрузить ее из dist/index.html. Я также попробовал команду производства с их сайта, чтобы она перестала смотреть файлы, но это также привело к загрузке пустой папки в папке dist.

Как я могу это сделать? Любая помощь будет отличной. По сути, я хочу иметь доступ к объединенным файлам без localhost.

Спасибо.

1 ответ

Решение

Вы запускаете файлы индекса локально, а index.html ожидает, что файл css и файл js будут в корне. Когда вы открываете свой файл локально, он пытается найти под C://

Чтобы обойти эту проблему, вы должны отредактировать index.html, к сожалению, после того, как вы его скомпилировали. Вот три способа преодоления проблемы, третий метод направлен на устранение проблемы, но я бы порекомендовал методы один и два.

Способ первый

  • Установите http-сервер, запустив npm install -g http-server
  • Перейдите в папку dist вашего проекта через терминал / cmd
  • Введите http-сервер
  • Ваш проект откроется в вашем веб-браузере по умолчанию

Способ второй

  • Загрузите ваше приложение на веб-сервер
  • Ваше приложение должно работать

Метод третий (не рекомендуется)

  • Добавить скрипт NPM "production": "parcel build index.html"
  • Запустите производственную сборку cd для вашего проекта и введите npm run production
  • Зайдите в вашу папку dist и откройте index.html в редакторе
  • Отредактируйте путь к файлу CSS из href="/main.--------.css" в href="./main.--------.css">
  • Отредактируйте путь к файлу js из src="/main.--------.js" в href="./main.--------.js">

(ПРИМЕЧАНИЕ. Дополнение React не обнаружит React при его локальном открытии, но приложение будет работать нормально.)

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