При попытке создать нового сотрудника я получил сообщение об ошибке (ввод данных в базу данных firebase, обратите внимание, что речь идет не о входе по электронной почте / паролю, как на вкладке аутентификации).Проблема появляется только после того, как я нажму кнопку отправки (которая должна вводить введенные пользователем данные в базу данных. Кроме того, я должен быть уже подключен к базе данных Firebase, так как регистрация и логин электронной почты / пароль работают правильно.
Ошибка на экране эмулятора Android при включении выглядит следующим образом: undefined is not a function (evaluating '_app.default.database()')
в строке после этого также указано, что есть ошибка: D:\Programs\reactnative\manager\src\actions\EmployeeActions.js:20:2
Из информации о gradle, это то, что яиспользуйте на практике:
"@babel/runtime": "^7.3.1",
"firebase": "^4.9.1",
"react": "16.6.3",
"react-native": "0.58.4",
"react-native-router-flux": "^3.45.0",
"react-redux": "^6.0.0",
"redux": "^4.0.1",
"redux-thunk": "^2.3.0"
Вот мой код в EmployeeActions.js, который, как я считаю, связан с этой ошибкой:
import firebase from '@firebase/app';
import '@firebase/auth';
import { Actions } from 'react-native-router-flux';
import {
EMPLOYEE_UPDATE,
EMPLOYEE_CREATE
} from './types';
export const employeeUpdate = ({ prop, value }) => {
return {
type: EMPLOYEE_UPDATE,
payload: { prop, value }
};
};
export const employeeCreate = ({ name, phone, shift }) => {
const { currentUser } = firebase.auth();
return (dispatch) => {
firebase
.database()
.ref(`/users/${currentUser.uid}/employees`)
.push({ name, phone, shift })
.then(() => {
dispatch({ type: EMPLOYEE_CREATE });
Actions.employeeList({ type: 'reset' });
});
};
};
Я понимаю, что существует довольно много неопределенныхне случаи ошибок объекта, но они часто немного отличаются от моего случая, что приводило меня в замешательство. Я довольно новичок в реакции на себя, любая помощь будет принята.
Спасибо за продвижение.