2017-07-08 83 views
1

我正在創建一個聚合物和firebase的Web應用程序,我希望能夠合併匿名登錄的帳戶以便能夠合併到電子郵件和密碼帳戶。將聚合物和firebase的匿名帳戶合併到電子郵件和密碼帳戶中

我發現了關於如何實現這個 https://firebase.google.com/docs/auth/web/anonymous-auth 的官方文檔,但是當我試用它時,它不起作用。

文檔提供了代碼示例

auth.currentUser.link(credential).then(function(user) { 
    console.log("Anonymous account successfully upgraded", user); 
}, function(error) { 
    console.log("Error upgrading anonymous account", error); 
}); 

我在這個點混淆,因爲這「AUTH」可變彈出沒有在那裏。

我試圖取代我的元素

<firebase-auth 
    id="auth" 
    user="{{user}}" 
    on-error="handleError"> 
</firebase-auth> 

的用戶屬性,但它給了我下面的錯誤:

Uncaught TypeError: this.user.link is not a function 

我應該什麼變量必須在「身份驗證」這個例子?或者,我如何將匿名賬戶與使用聚合力的電子郵件和密碼賬戶合併?

回答

1

好的,我想通了。

原來,「鏈接」的方法已經過時,相反,我們必須使用「linkWithCredential」,所以代碼會

this.$.auth.auth.currentUser.linkWithCredential(credential).then(function(user) { 
    console.log("Anonymous account successfully upgraded", user); 
}, function(error) { 
    console.log("Error upgrading anonymous account", error); 
}); 
1

聚合物的firebase-auth元素具有auth屬性。所以,你可以給它綁定:

<firebase-auth 
    id="auth" 
    user="{{user}}" 
    auth="{{auth}}" 
    on-error="handleError"> 
</firebase-auth> 

&然後在含有元素直接使用this.auth或者你可以只引用它直接在你的代碼瓦特/像出結合:

this.$.auth.auth 

旁註 - 令人感到困惑的是,firebase-auth的文檔給出了一個導致上面的「auth.auth」的示例元素ID「auth」。

+0

其實我想這一點,但有以下錯誤 「這。$。auth.auth.currentUser.link不是一個函數「 – dshukertjr

+0

雖然感謝,」this。$。auth.auth「幫助 – dshukertjr

相關問題