我有一个可以使用 firebase 登录的应用程序。我为此使用了polymerfire。有一个主要的应用程序元素:my-app
有这些孩子:
<firebase-app
auth-domain="my-app-ID.firebaseapp.com"
database-url="https://my-app-ID.firebaseio.com"
api-key="my-app-apikey">
</firebase-app>
<firebase-auth
id="auth"
user="{{user}}"
status-known="{{statusKnown}}"
provider="google"
on-error="handleError">
</firebase-auth>
<iron-pages selected="{{page}}" attr-for-selected="name">
<my-loading name="loading"></my-loading>
<my-home name="home"></my-home>
<my-dashboard name="dashboard"></my-dashboard>
</iron-pages>
page
随元素的statusKnown
anduser
属性而变化。firebase-auth
虽然statusKnown
是页面是可见false
的。loading
当statusKnown
is时,true
它选择任home
一屏幕,当user
isnull
或 users时dashboard
。
_signInChanged(statusKnown) {
if(this.statusKnown) {
if(this.user) {
this.page = "dashboard"
} else {
this.page = "home"
}
} else {
this.page = "loading"
}
}
屏幕home
上有一个登录按钮,然后单击它必须调用该firebase-auth
函数signInWithPopup()
。但是firebase-auth
无法从元素访问该my-home
元素。它不能通过属性找到document.getElementByID
或作为属性传递。或者以某种方式访问 if 使用父指针this.parentElement.$.auth.signInWithPopup()
我怎样才能auth
从孩子那里得到元素?