当需要从数据库中返回一些数据,然后使用它进行一些计算并将其存储回来时,则需要使用事务性数据。
下面来看看运动员列表中的运动员。
我们要检索属性,添加年龄增加1
岁并将其返还给Firebase。
amandaRef
从集合中检索年龄,然后可以使用事务方法。 我们将获得当前的年龄,增加一年,并更新集合。
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="utf-8" />
<title>FireBase Example</title>
<script src="https://www.gstatic.com/firebasejs/4.9.1/firebase.js"></script>
<script>
// Initialize Firebase
var config = {
apiKey: "AIzaSyAOSPYpgn7T_bKa6VbCaSeQlsw-3p3zqDs",
authDomain: "yiibai-firebase.firebaseapp.com",
databaseURL: "https://yiibai-firebase.firebaseio.com/",
projectId: "yiibai-firebase",
storageBucket: "yiibai-firebase.appspot.com",
messagingSenderId: "334522625008"
};
firebase.initializeApp(config);
var amandaAgeRef = firebase.database().ref().child('players').child('Amanda').child('age');
amandaAgeRef.transaction(function(currentAge) {
return currentAge + 1;
});
</script>
</head>
<body>
如果运行这个代码,可以看到年龄值更新为21
。如下图所示 -