Polymer 要素と Polymerfire 要素を使用してアプリを作成していますが、アプリ全体でユーザーと認証の参照を共有する効果的な方法が見つかりません。
認証参照を受け取る私の現在の解決策は次のとおりです。
var auth = document.getElementById('appID').app.auth()
このアプローチは機能しますが、もっと良い方法があるはずだと私は感じています。
2番目の問題は、サブビューでユーザー参照を取得する方法がわからないことです。プロパティ共有によって参照を取得するのは非常に面倒です(そして、このアプローチを使用して問題が発生しています)。
iron-meta タグを使用すると問題が解決する可能性があると考えていましたが、それは、ログインとログアウトのたびに「手動で」値を設定する必要があることを意味します。では、参照を共有するためのより簡単な方法はありますか?
firebase-auth 参照に直接アクセスする場合:
document.getElementById('authID').user
次に、要素のready関数呼び出しでアクセスすると、常にnullになるという問題があります。後で呼び出された場合は正常に機能しますが、ユーザーが準備完了の呼び出しでログインしているかどうかを確認する必要があります(そしてログインページにリダイレクトします)。
さらに、グローバル Polymer 設定が dom: 'shadow' に設定されている場合、このアプローチはまったく機能しません (firebase-auth は index.html ではなく下位にあり、この設定ではインデックスのみにアクセスできます。 html 要素) であり、この設定は将来的にデフォルトで設定されることになっているため、ソリューションを将来的に保証したいと考えています。
Jan さん、どんな回答にも感謝します