您的位置:首页 > Web前端 > React

[React Native + Firebase] React Native: Real time database with Firebase -- setup & CRUD

2016-08-04 01:52 471 查看
Install:

npm i --save firebase // v3.2.1


Config Firebase:

First we need to require Firebase:

import firebase from 'firebase';


Then in the component constructor, we need to init Firebase:

constructor(props){
super(props);
// Initialize Firebase
var config = {
apiKey: "<api_key>",
authDomain: "<authDomain>",
databaseURL: "<databaseURL>",
storageBucket: "<storageBucket>",
};
firebase.initializeApp(config);
}


The config you can easily get from the your Firebase App page.

Create new node: set()

writeUserData(userId, name, email, imageUrl) {
firebase.database().ref('users/' + userId).set({
username: name,
email: email,
profile_picture : imageUrl
});
}

// calling
this.writeUserData(1, "Zhentian Wan", 'answer881215@gmail.com', null);


Then one node will be created in the "users" node, uid is "1".

Create new Child node: push()

appendOneMoreUser(name, email, imageUrl){
let ref = firebase.database().ref().child('users').push({
username: name,
email: email
});
this.updateMe("Yoona", "yoona.only@gmail.com", ref.key);
}

// calling
this.appendOneMoreUser("Yuri", 'yuri.only@gmail.com', null);


So under "users" node, we want to append one new node, the uid will be generated randomly.

The "ref" object contains "key" prop which ref to the uid in the database.

Update one node: update()

updateMe(name, email, key){
const update = {
username: name,
email
};
let ref = firebase.database().ref('users/' + key).update(update)
.then((res)=>{
console.log("Data has been updated ");
});
}

// calling:
const ref = firsebase.database().ref().child('users').push(user);
this.updateMe("Yoona", "yoona.only@gmail.com", ref.key);


update() and set() methods both return Promise. So you can chaining .then() onto it.

Delete node: remove()

deleteMe(){
firebase.database().ref('users/1').remove();
}


Delete the uid = 1 user.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: