0

我有一个 Polymer 应用程序,我想在其中使用 Firebase 身份验证。我创建了一个<paper-dialog>带有电子邮件和密码表单的自定义元素。

如果我在自定义元素中包含<firebase-app><firebase-auth>元素,我就可以对用户进行身份验证。到目前为止,一切都很好。

当我想使用根元素中的按钮/功能将用户从应用程序中注销时,就会出现问题。我需要获取<firebase-auth>元素才能调用它的signOut方法。我找到带有or但它返回 null的<firebase-auth>元素。$.id$$('#id')

如果我将<firebase-auth>and<firebase-app>元素移动到根元素中,那么我在尝试从我的自定义登录元素中访问它们时会遇到同样的问题。

如果我只将<firebase-auth>元素添加到两个地方,我会得到'No app configured for auth',如果我也将<firebase-app>元素添加到两个地方,我会得到'Default app already defined'.

我怎样才能使这项工作?

4

2 回答 2

0

在您的按钮功能上,您只需调用以下 JavaScript 即可让用户退出 Firebase:

firebase.auth().signOut();
于 2016-08-25T13:12:40.003 回答
0

我无法找到在我的<signin-dialog>. 对我有用的是离开<firebase-app><firebase-auth>进入我的顶级<app>元素,然后从以下位置触发一个事件<signin-dialog>并从 evenHandler 调用<firebase-auth>signIn 方法<app>

<app>
<iron-ajax auto url="https://apiserver/config" handle-as="json" last-response="{{config}}"></iron-ajax>

        <template is="dom-if" if="{{config}}">
          <firebase-app auth-domain="{{config.fbWebConfig.authDomain}}" database-url="{{config.fbWebConfig.databaseURL}}" api-key="{{config.fbWebConfig.apiKey}}">
          </firebase-app>
          <firebase-auth id="auth" name='auth' user="{{user}}" on-error="handleAuthError">
          </firebase-auth>
            <signin-dialog user={{user}}></signin-dialog>
        </template>  
</app>
于 2016-08-18T12:46:10.587 回答