Я хочу увеличить значение числового поля в моей базе данных пожарного депо при нажатии кнопки. Я настроил кнопку onClick, но когда я нажимаю, она дает мне эту ошибку:
TypeError: Невозможно прочитать свойство 'increment' из неопределенного
Я не могупоймите, что я сделал неправильно.
Вот мой код:
import React,{useState,useEffect, useRef, useContext} from 'react'
import UserContext from './UserContext.js';
import fire from '../config/Fire';
import copper from '../img/coppernew.jpg'
function useTimes(){
const user = useContext(UserContext)
const [kullanici,setTimes] = useState([])
useEffect(()=>{
fire
.firestore()
.collection('kullanici')
.doc(user)
.onSnapshot((doc)=>{
const newTimes = doc.data()
setTimes(newTimes)
})
},[])
return kullanici
}
function upgradecopper(){
var userUid = fire.auth().currentUser.uid;
console.log(userUid);
var db = fire.firestore();
var copperincrease = db.collection("kullanici").doc(userUid);
copperincrease.update({
copper:fire.firestore.FieldValue.increment(1)
});
}
const Mine = () => {
const kullanici =useTimes()
return(
<div className="mine">
<div>
<ul className="a">
<ul className="dik2"><li><button onClick={()=>upgradecopper()}>Upgrade Copper Mine</button>(LVL: {kullanici.copper})</li><li><span><img src={copper} alt="copper"/></span></li></ul>
</ul>
</div>
<li>Account: <span>{kullanici.email} </span></li>
</div>
)
}
export default Mine
Мой Fire.js
import firebase from 'firebase/app';
import 'firebase/firestore'
import 'firebase/auth';
const config = {
(there is my api info)
};
const fire = firebase.initializeApp(config);
export default fire;
Новый файл Fire.js:
import firebase from 'firebase';
import 'firebase/app';
import 'firebase/firestore'
import 'firebase/auth';
const config = { /* COPY THE ACTUAL CONFIG FROM FIREBASE CONSOLE */
(there is my api info)
};
const fire = firebase.initializeApp(config);
export default fire;