Firebase не запускает файл index.html

Я довольно новый программист, проходящий через учебник Firebase. Я прошел шаги 1-5 учебника (https://codelabs.developers.google.com/codelabs/firebase-web/#5). Я добавил в jt-код "Добавить Firebase в свой веб-приложение" js-код и настроил CLI Firebase. Однако, когда я запускаю сервер Firebase, все, похоже, работает иначе, чем не показывает код из файла index.html.

Я вхожу в правильный каталог, и моя консоль говорит: "Сервер прослушивает: http://localhost:5000." Но на localhost 5000 он показывает общий "Добро пожаловать в Firebase Hosting: вы видите это, потому что вы успешно настроили Firebase Hosting. Теперь пришло время сделать что-то необыкновенное!" а не код интерфейса приложения в файле index.html. Это единственный html файл в моем каталоге. Кажется, я пропускаю что-то очень простое. Благодарим вас за помощь.

Ответ 1

Я понял свой ответ. Файл index.html, который был отправлен, находился в "общедоступном" файле, который был создан во время этапа "firebase init". Я заменил этот файл-заполнитель html на тот, который был для моего приложения.

Ответ 2

Проблема firebase init является невероятно грубой. Он просто переопределяет файл index.html, который был в вашей папке public... нет подтверждения, нет защитной сетки, нет ничего.

Единственный способ исправить это - повторно создать свой собственный index.html файл. Если у вас нет резервной копии или других средств для повторного создания файла index.html... ну... слишком плохо!

Как правило, шаги настройки firebase с веб-пакетом (или другими инструментами сборки) выглядят примерно так:

  • firebase login
  • firebase init
  • your-build-command-here
  • firebase deploy

Обратите внимание, что вам нужно выполнить первые два шага в первый раз, когда вы настраиваете построение на этом компьютере (или, возможно, когда выпущена новая редакция firebase). Для повторного развертывания просто:

  • your-build-command-here
  • firebase deploy

UPDATE

В последней версии он, по крайней мере, спрашивает вас, следует ли его переопределить или нет:)

Ответ 3

Хостинг Firebase не показывает приложение?

Там может быть две причины этой проблемы

1-й шаг:

Убедитесь, что ваша общедоступная папка (определенная в вашем firebase.json) 'dist', содержащая index.html, не была изменена командой инициализации firebase, если да, замените ее исходным проектом index.html.

для справки (дистанция стандартная, но ваша может отличаться)

{ "hosting": { "public": "dist"} }

2-й шаг:

Убедитесь, что настроили ваш базовый href в проекте index.html

как

<base href="https://["YOUR FIREBASE PROJECT NAME"].firebaseapp.com/">

и другие файлы в комплекте

<script type="text/javascript" src="https://["YOUR FIREBASE PROJECT NAME"].firebaseapp.com/runtime.a66f828dca56eeb90e02.js">

<script type="text/javascript" src="https://["YOUR FIREBASE PROJECT NAME"].firebaseapp.com/main.2eb2046276073df361f7.js">

3-й шаг запуска команды - развертывание Firebase

наслаждаться ! ;)

Ответ 4

Для угловых 2 или 6 с cli используйте . (dist) как общедоступный каталог,

$ ng build --prod
$ cd dist/
$ firebase init
 ? What do you want to use as your public directory? .
 ? Configure as a single-page app (rewrite all urls to /index.html)? Yes
 ? File ./index.html already exists. Overwrite? No
$ firebase deploy

Ответ 5

Для развертывания приложения Angular в простой и быстрой обучающей программе Firebase вы можете найти здесь.

В процессе инициализации firebase тип N, когда вопрос "Файл dist/index.html уже существует. Перезаписывает?" , и ваша страница будет отображаться так, как должна быть.

Ответ 6

В опцию общей папки напишите dist/your-folder-name. Это позволит вам визуализировать ваш индексный файл, который находится в вашей папке.

Ответ 7

В моем случае, когда я запускаю команду ng build --prod она создает подпапку в папке dist. Предположим, мой проект называется FirstProject. Я могу видеть подпапку с именем FirstProject внутри папки dist (dist/FirstProject). Задайте dist/[subDirectory] в качестве общего каталога.

What do you want to use as your public directory? dist/FirstProject

Это решило мою проблему

Ответ 8

Для всех, кто сталкивается с этим. Попробуйте запустить в режиме инкогнито - браузер был кеширован для меня.

fooobar.com/questions/17713878/...

Ответ 9

npm install -g firebase-tools
firebase login
firebase init
firebase deploy
firebase open 

Выберите следующее после прокрутки вниз

  Hosting: Deployed Site

Ответ 10

Пожалуйста, следуйте шаг

npm install -g firebase-tools

Если у вас уже есть папка dist, удалите ее из каталога

firebase login
ng build --prod
firebase init
firebase deploy

Ответ 11

В моем случае firebase использовал неправильный каталог, см. Также здесь: CLI firebase не распознал текущий каталог проекта для 'firebase init'. В то время как я ожидал, что firebase поместит все созданные файлы в каталог моего проекта, он был полностью отключен и поместил все файлы в мой каталог /Users/MyUserName и развернул оттуда неправильный index.html.

enter image description here

Вот как это исправить (переустановка firebase не требуется, как предложено в связанном посте):

  • удалить все созданные файлы firebase из каталога /Users/MyUserName (.firebaserc, firebase.json, index.html и dist-folder)
  • запустить firebase init в каталоге проекта
  • используйте dist/projectname в качестве публичного каталога
  • Настроить как одностраничное приложение "Да"
  • не перезаписывайте index.html (если вы это сделаете, убедитесь, что снова выполнили "ng build" перед развертыванием)
  • развертывание пожарной базы

Кстати, для всех, кто использует Angular 7, этот урок о развертывании приложения angular 7 для хостинга Firebase был действительно полезным для меня.

Ответ 12

Я столкнулся с подобной ситуацией. Когда мы запускаем firebase init, он задает пару вопросов. В то время мы упоминаем путь к каталогу, откуда firebase будет брать все файлы для развертывания. Убедитесь, что каталог содержит index.html.