0

Ich versuche, neue Polymer-2.x mit Polyfire zu Firebase verbinden, dieses Demo-Projekt zeigen nur Liste der Ort und Firebase-Authentifizierung verwenden, um sicherzustellen, nur registrierte Benutzer zugreifen können die Ortsliste.Wie Firebase-Authentifizierung mit Polymer-2x

aber ich kann nicht Firebase-Authentifizierung funktioniert und keine Probe für dieses Projekt, das einzige Beispiel ist für Polymer-1.x und immer noch den alten Code mit Polymer-Objekt.

hier ist ein Teil meines Codes, die Ortsliste funktionierte gut, es kann die Firebase-Datenbank korrekt abrufen, aber das Skript fragt nicht nach Authentifizierung, weil ich nicht verstehe, wie man es in ES6 nennt.

HTML Sektion:

<firebase-app 
     auth-domain="blablabla.firebaseapp.com" 
     database-url="https://blablabla.firebaseio.com" 
     api-key="blablabla" 
     storage-bucket="blablabla.appspot.com" 
     messaging-sender-id="blablabla"> 
</firebase-app> 
<firebase-auth id="auth" user="{{ user }}" provider="google" on-error="handleError"> 
</firebase-auth> 

Ansicht Sektion:

<firebase-query 
    id="query" 
    path="/places" 
    data="{{ places }}"> 
</firebase-query> 

<ul> 
    <template is="dom-repeat" items="{{ places }}" as="item"> 
     <li>[[ item.name ]]</li> 
    </template> 
</ul> 

Script Rubrik:

<script> 
     class MyView1 extends Polymer.Element { 
      static get is() { 
       return 'my-view1'; 
      } 

      static get properties() { 
       return { 
        places: { 
         type: Object 
        } 
       } 
      } 
     } 

     window.customElements.define(MyView1.is, MyView1); 
</script> 

die Frage ist, wie Pop-up-Authentifizierung oder eine Firebase-Authentifizierungsmethode nennen mit Dieses neue ES6-Skript?

Antwort

0

Ich habe vor kurzem mein firebase-Projekt von polymer1 auf 2 verschoben und obwohl es noch nicht 100% ig funktioniert, scheint es, als ob die Polymerfeuer-Elemente funktionieren.

kippe Sie rufen Sie einfach an:

loginGoogle() { 
     var that = this; 
     this.$.auth.signInWithPopup().then(function(result) { 
      // This gives you a Google Access Token 
      var token = result.credential.accessToken; 
      // The signed-in user info 
      var user = result.user; 

     }).catch(function(error) { 
      // Handle Errors here. 
      var errorCode = error.code; 
      var errorMessage = error.message; 
      // The email of the user's account used. 
      var email = error.email; 
      // The firebase.auth.AuthCredential type that was used. 
      var credential = error.credential; 
      console.log('Error during the login', errorCode, errorMessage); 
     }); 
    } 
+0

ja es hat funktioniert, mein Problem ist, ich innen nach außen dom-Modul deklarieren ... sollte Feuerbasis-auth ... – zho

+0

Ja, der dom-Modul sollte immer kapseln Sie Ihre Vorlagen- und Skript-Tags ein. – Niklas