問題タブ [polymerfire]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
firebase - Polymer 1.x + Firebase 2.x: ログイン後の最初のレンダリングで Firebase データがロードされない
ユーザー ログイン イベント後のページの最初の読み込みitems
時に、Firebase に保存されている一連のオブジェクトをプロパティに入力したいと考えています。
Aは私の望ましい行動を達成します。
あBはしません。
BBを使用すると、オブジェクトが読み込まれることを期待していitems
ますが、items
オブジェクトは null です。ただし、ブラウザーを手動で (ログアウトせずに) 更新すると、要素は期待どおりに動作します。ただし、ログアウトすると(ログアウト中に更新すると)、再度リロードするまで問題が再発します。ここで説明されているように、アプリがリセットされないという事実の一部が原因で、ログアウトしてから再度ログインしても問題が再発しないと思います。
なぜAが機能するのですか? しかし、Bではありませんか?また、B を機能させるには、 Bにどのような変更を加える必要がありますか? widgets
(パスからのパスを保存したいので、root/widgets/
その詳細をusers/...
パスの下に保存する必要はありません。
以前の失敗した試行
私の現在の (証明されていない) 理論は、Bの場合(URL が定数/静的である場合、つまりwidgets/
)firebase-query
はある種の競合状態に関与するというものです。ライフサイクルイベントの後にのみデータを取得し、データの再取得を試みません。一方、属性のデータバインディングに基づいてパスが動的に更新されると、 は再取得を試みfirebase-query
ますpath
(つまり、path="users/[[user.uid]]/widgets"
)。この理論は正しいですか?それとも他に何か原因があるのでしょうか? イベント後にデータを強制的に取得する必要がありますか? もしそうなら、どうすればこれをすべて達成できますか?
次のアイデアを試してみましたが、成功しませんでした。
ハ Dまた、Polymer Slack サイトで、@will-in-china は次のように述べています。
初めてデータをロードするときに問題が発生しました。同じパスへの参照が複数ない場合、この問題は発生しないことがわかりました。
path="widgets"
要素 (およびアプリ)内の要素内のパスへの参照が 1 つしかないため、このコンテキストでそれが何を意味するのかわかりませんfirebase-query
。
firebase - Polymer で Firebase データを取得できません
Firebase データを取得しようとしましたが、firebase-query は常に空の配列を返します。
まず、私のFirebaseデータでは次のようになります
第二に、私のPolymerコードは以下のようなものです:
また、auth-domain、database-url、api-key の部分に間違いはありませんでした。
スクリプトコードは次のとおりです。
また、Firebase ルールを次のように変更します。
どの部分が悪いのかさっぱりわかりません。コンソールでは、newData
は常に と等しくなり[]
ます。
firebase - アプリ全体でユーザーと認証参照を共有する効果的な方法
Polymer 要素と Polymerfire 要素を使用してアプリを作成していますが、アプリ全体でユーザーと認証の参照を共有する効果的な方法が見つかりません。
認証参照を受け取る私の現在の解決策は次のとおりです。
このアプローチは機能しますが、もっと良い方法があるはずだと私は感じています。
2番目の問題は、サブビューでユーザー参照を取得する方法がわからないことです。プロパティ共有によって参照を取得するのは非常に面倒です(そして、このアプローチを使用して問題が発生しています)。
iron-meta タグを使用すると問題が解決する可能性があると考えていましたが、それは、ログインとログアウトのたびに「手動で」値を設定する必要があることを意味します。では、参照を共有するためのより簡単な方法はありますか?
firebase-auth 参照に直接アクセスする場合:
次に、要素のready関数呼び出しでアクセスすると、常にnullになるという問題があります。後で呼び出された場合は正常に機能しますが、ユーザーが準備完了の呼び出しでログインしているかどうかを確認する必要があります(そしてログインページにリダイレクトします)。
さらに、グローバル Polymer 設定が dom: 'shadow' に設定されている場合、このアプローチはまったく機能しません (firebase-auth は index.html ではなく下位にあり、この設定ではインデックスのみにアクセスできます。 html 要素) であり、この設定は将来的にデフォルトで設定されることになっているため、ソリューションを将来的に保証したいと考えています。
Jan さん、どんな回答にも感謝します
authentication - Polymerfire/firebase-auth メール検証が機能しない
私は(ポリマーファイアの)firebase-authを使用しています。ここに私の要素があります:
ログイン時にユーザーの変更を確認できるため、その部分は正常に機能します。私の問題は、何らかの理由でuser
、メールを確認するときに変更を確認できないことです。ここに私のオブザーバーがあります:
上のすべての変更を確実に監視するために、2 番目のオブザーバーを追加しましたuser
。繰り返しますが、メール アドレスを確認してもオブザーバーはトリガーされません。検証後にemailVerified
プロパティを確認するボタンを追加しましたが、まだfalseです。user
追加したチェックボタンは次のとおりです。
そしてチェック機能:
ユーザーが確認したにもかかわらず、_check
まだ false を返します。
ポリマー アプリをリロードすると、emailVerified
prop は true になります。しかし、なんらかの理由user
で、ハード リロードしないと適切に更新されません。
firebase - Polymerfire: 未定義の「signInWithEmailAndPassword」
アプリケーション認証に Firebase Authentication を実装しようとしていますが、Cannot read property 'signInWithEmailAndPassword' of undefined
エラーが発生します。
以下はコードに従います。
index.html
my-app.html
Polymer 1.0 と Firebase 3.0 を使用しています。何か不足していますか?ありがとう。