0

ユーザー オブジェクトを使用<firebase-login>して、ユーザーが自分の要素にログインしているかどうかを確認したいと考えています。すべてのカスタム要素で以下のコードを呼び出さずにユーザー オブジェクトをグローバルにするにはどうすればよいですか?

<firebase-login id="login"
                user="{{user}}"
                statusKnown="{{statusKnown}}" 
                location="FIREBASE_URL"
                provider="{{provider}}" 
                on-error="{{error}}"></firebase-login>
4

1 に答える 1

1

次のような custom-element を作成します。

<polymer-element name="example" attributes="user">
 <template>
  <firebase-login 
    id="login"
    user="{{user}}"                
    statusKnown="{{statusKnown}}"                 
    location="FIREBASE_URL"
    provider="{{provider}}"                
    on-error="{{error}}">
  </firebase-login>
 </template>

  <script>
    Polymer({

    })
  </script>
</polymer-element>

次に、pvc-globalsを使用するか、グローバルを渡す別のカスタム要素を作成します。Polymerには、これを行う方法を示すapp-globalsの例があります。

<polymer-element name="app-example" attributes="globals">
  <template>
    <pvc-globals value="{{globals}}"></pvc-globals>
    <example-element user="{{user}}"></example-element>
  </template>
  <script>
    Polymer({
      ready: function () {
        this.globals.user = this.user;
      }
    });
  </script>
</polymer-element>

または、例の要素内から:

<polymer-element name="example" attributes="user globals">
 <template>
   <pvc-globals value="{{globals}}"></pvc-globals>
  <firebase-login 
    id="login"
    user="{{user}}"                
    statusKnown="{{statusKnown}}"                 
    location="FIREBASE_URL"
    provider="{{provider}}"                
    on-error="{{error}}">
  </firebase-login>
 </template>

  <script>
    Polymer({
      ready: function () {
        this.globals.user = this.user;
      }
    })
  </script>
</polymer-element>

お役に立てれば!

于 2015-02-15T21:49:09.337 に答える