我有一个待办事项列表,其中有一个'完成'按钮。我想在每次用户点击按钮时将时间存储在firebase中。该按钮在一段时间后启用,当用户再次单击该按钮时,我想再次存储时间而不是覆盖现有时间。在我的代码中,时间会被覆盖。
的index.html
$scope.doneItem = function(todo) {
todo.stopSpam = true;
todo.timestamp = Date();
$interval(callAtInterval, 30000);
function callAtInterval(){
todo.stopSpam = false;
}
};
app.js
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import time
import numpy as np
for t in [np.uint8, np.int8]:
a=np.empty([480, 640], t)
v=[10, 245]
for y in range(480):
for x in range(640):
a[y, x]=v[x&1] # 50%=10, 50%=245
t1=time.clock()
a[a<32]=0
a[a>224]=0
t2=time.clock()
print("%2.3f ms"%((t2-t1)*1000), a.dtype)
答案 0 :(得分:1)
为避免覆盖现有数据,您的代码应在每次要在该节点中存储数据时创建新的子节点。
给定ref是你的根参考
var timestampsRef = ref.child("timestamps");
var newTimestampRef = timestampsRef.push();
newTimestampRef.set({
stamp: "a timestamp"
});
每次用户按下按钮时调用它将创建一个不同的节点名称,然后将时间戳作为子项添加到每个节点名称。
"timestamps": {
"-QIUEiijasdj923498": {
"stamp": "a timestamp"
},
"-Qnbnajsd093409koi": {
"stamp": "a timestamp"
}