我正在尝试为Firebase中新创建的用户添加自定义信息。我正确使用了ref()。set(),由于某种原因,它告诉我这不是一个函数。我想念什么?
我已确保使用正确的语法和方法。一切都已定义。
这是我的控制台中的错误: Console Error
TypeError: Object(...) is not a function
at writeUserName (db.js:4)
at SignUp.js:54
这是我的Firebase配置: Firebase Config
import firebase from 'firebase/app';
import 'firebase/database';
import 'firebase/auth';
const config = {
apiKey: "AIzaSyDuhQeHZTJOaKdqJhasEKq0jLs4Cv6VZwk",
authDomain: "yokrapp.firebaseapp.com",
databaseURL: "https://yokrapp.firebaseio.com",
projectId: "yokrapp",
storageBucket: "yokrapp.appspot.com",
messagingSenderId: "303116446076"
};
firebase.initializeApp(config);
export const firebaseAuth = firebase.auth;
export const database = firebase.database();
export const ref = firebase.database().ref();
这是引发错误的代码: ref().set() -> Object(...) is not a function
import { ref } from '../config';
export const writeUserName = (userId, name) => {
ref('users/' + userId).set({
name,
});
};
预先感谢您的帮助!
答案 0 :(得分:0)
尝试从配置文件中导入database
并与现有的writeUserName
函数一起使用:
import { database } from '../config';
export const writeUserName = (userId, name) => {
database.ref('users/' + userId).set({ name });
};
与当前导入ref
一样,您有效地做到了:
firebase.database().ref().ref('users/' + userId).set();
否则,您可以在ref
导出中使用child():
import { ref } from '../config';
export const writeUserName = (userId, name) => {
ref.child('users/' + userId).set({ name });
};
希望有帮助!