पुन: प्रमाणीकृत करें मैं फ़ायरबेस में किसी उपयोगकर्ता को पुनः प्रमाणित करने के तरीके के साथ सहायता की सराहना करता हूं। मुझे आश्चर्य है कि अगर इन दस्तावेजों का उपयोग कैसे किया जाए, तो यह सभी महान विशेषताओं को जोड़ने में कोई समझ नहीं आता है:फ़ायरबेस का उपयोग
वर्तमान में, यह वही है जो मैं कोशिश कर रहा हूं, और यह काम नहीं कर रहा है। cannot read property 'credential' of undefined
के रूप में त्रुटियाँ निर्माता में:
constructor(@Inject(FirebaseApp) firebaseApp: any) {
this.auth = firebaseApp.auth();
console.log(this.auth);
}
तो समारोह
changePassword(passwordData) {
if(passwordData.valid) {
console.log(passwordData.value);
// let us reauthenticate first irrespective of how long
// user's been logged in!
const user = this.auth.currentUser;
const credential = this.auth.EmailAuthProvider.credential(user.email, passwordData.value.oldpassword);
console.log(credential);
this.auth.reauthenticate(credential)
.then((_) => {
console.log('User reauthenticated');
this.auth.updatePassword(passwordData.value.newpassword)
.then((_) => {
console.log('Password changed');
})
.catch((error) => {
console.log(error);
})
})
.catch((error) => {
console.log(error);
})
}
}
क्या आप इसे हल करने में सक्षम थे? मैं एक ही मुद्दे में भाग रहा हूँ। –
@MK_Dev आपने फ्रैंक के उत्तर की कोशिश की? आपको उपयोगकर्ता पर पुनः प्रमाणीकरण करना चाहिए, न कि लेखक। शायद यह अब काम करेगा, क्योंकि यह मेरे लिए कभी नहीं किया। – Rexford
वास्तव में, यह काम किया। मुझे वही समस्या थी जहां EmailAuthProvider को अपरिभाषित किया गया था। मुझे जो करना था वह किसी भी को "कास्ट" फायरबेस था: var fb: any = firebase; var credential = fb.auth.EmailAuthProvider.credential (ईमेल, पासवर्ड); –