В моем текущем проекте с Polymer & Firebase У меня проблема с обновлением страницы ни одна из моих маршрутизируемых страниц не найдена 404. Я создал новую проект, который производит ту же ошибку и размещает его с помощью firebase.
Я использую проверку подлинности Google и после успешной регистрации загружаю приложение, которое в основном представляет собой набор для полимеров. Я считаю, что проблема заключается в структуре моих страниц/проекта. Поскольку мое приложение - это всего лишь шлюз для моего сайта, который содержит маршрутизацию и соответствующие страницы. Я добавил изображение ниже, чтобы объяснить, как структурирован мой проект. Я также добавил изображение источника в моей консоли. когда они перенаправляются на страницу, а другая - при перезагрузке страницы.
Page refresh возвращает 404error с Polymer Firebase (не может найти маршрутизированную страницу)
Я был бы очень признателен, если кто-то находит время, чтобы посмотреть на этот
Изображение моей структуры проекта
firebase.json файл
{
"database": {
"rules": "database.rules.json"
},
"hosting": {
"public": "public"
}
}
firebase.json файл из моего реального проекта с такой же проблемой
{
"database": {
"rules": "database.rules.json"
},
"hosting": {
"public": "public",
"rewrites": [
{
"source": "**/!{*.*}",
"destination": "/index.html"
}
]
}
}
Код для моего index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>polyfire</title>
<link rel="import" href="my-app.html">
<style media="screen">
body {
font-family: Roboto, Arial, sans-serif;
}
</style>
</head>
<body>
<my-app></my-app>
</body>
</html>
Код для моей моей-app.html
<link rel="import" href="my-login.html">
<link rel="import" href="my-site.html">
<dom-module id="my-app">
<template>
<style>
:host {
display: block;
}
</style>
<firebase-app
auth-domain="firebaseapp.com"
database-url="firebaseio.com"
api-key="..."
storage-bucket="gs://yole.appspot.com">
</firebase-app>
<firebase-auth user="{{user}}"></firebase-auth>
<template is="dom-if" if="[[!user]]">
<my-login></my-login>
</template>
<template is="dom-if" if="[[user]]">
<my-site></my-site>
</template>
</template>
<script>
Polymer({
is: 'my-app',
properties: {},
});
</script>
код моего-login.html
<dom-module id="my-login">
<template>
<style>
:host {
display: block;
}
</style>
<firebase-auth
id="auth"
user="{{user}}"
status-known="{{statusKnown}}"
provider="google"
on-error="handleError"></firebase-auth>
<paper-button class="logInOutBtn" raised on-tap="login" hidden$="[[user]]">Sign-up with Google</paper-button>
<paper-button class="logInOutBtn" raised on-tap="logout" hidden$="[[!user]]">Sign-out</paper-button>
</template>
<script>
Polymer({
is: 'my-login',
properties: {
user: {
type: Object,
},
statusKnown: {
type: Object,
}
},
login: function() {
this.$.auth.signInWithPopup();
},
logout: function() {
this.$.auth.signOut();
},
});
</script>
</dom-module>
Большое спасибо за быстрый ответ. У меня было ощущение, что проблема связана с этим, но недостаточно опыта, чтобы знать, что именно происходит там. Я развертываю свое приложение с использованием firebase, в котором находится ссылка. Я обновил свой вопрос и включил свой файл firebase.json. – Niklas
@NiklasLang Если вы развернете Firebase, проверьте мой файл 'firebase.json' и посмотрите, как это делается, и попробуйте с вашей конфигурацией, если он работает. – Rexford
Человек, который вы быстро забеременели, и на вершине его он решил мою проблему в тестовом приложении и моем фактическом приложении. Спасибо – Niklas