gpt4 book ai didi

javascript - 异步箭头函数预期没有返回值

转载 作者:行者123 更新时间:2023-12-04 12:11:22 32 4
gpt4 key购买 nike

我正在使用 Firebase oAuth 构建一个应用程序。我按照所有说明进行操作,但我的代码返回一个错误,提示“异步箭头函数预期没有返回值”。
我看到有多个标题相同的帖子,但没有找到答案。
enter image description here

import firebase from 'firebase/app';
import 'firebase/firestore';
import 'firebase/auth';

export const auth = firebase.auth();
export const firestore = firebase.firestore();

const config = {
apiKey: 'XXXXXXXXX',
authDomain: 'XXXXXXXXX',
projectId: 'XXXXXXXXX',
storageBucket: 'XXXXXXXXX',
messagingSenderId: 'XXXXXXXXX',
appId: 'XXXXXXXXX',
};
firebase.initializeApp(config);

export const createUserProfileDocument = async (userAuth, additionalData) => {
if (!userAuth) return;

const userRef = firestore.doc(`users/${userAuth.uid}`);

const snapShot = await userRef.get();

if (!snapShot.exists) {
const { displayName, email } = userAuth;
const createdAt = new Date();
try {
await userRef.set({
displayName,
email,
createdAt,
...additionalData,
});
} catch (error) {
console.log('error creating user', error.message);
}
}

return userRef;
};


const provider = new firebase.auth.GoogleAuthProvider();
provider.setCustomParameters({ prompt: 'select_account' });
export const signInWithGoogle = () => auth.signInWithPopup(provider);

export default firebase;

最佳答案

将第一行从 if (!userAuth) return 更改为至if (!userAuth) return {} ,这应该可以解决问题
解释
您遇到的错误是 consistent-return最后,这基本上意味着您的函数应该始终返回相同的类型。
考虑到这一点,如果我们看一下函数的第一行

if (!userAuth) return;
此行返回 void ,但函数的最后一行返回了一些其他类型
return userRef;
userRef绝对不是 void 类型这就是您遇到此错误的原因。

关于javascript - 异步箭头函数预期没有返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65460465/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com