我在更新数组中的条目后尝试保存数据集合。
// Edit a post
$scope.editMe = function(message) {
if($scope.textBoxMessage = "What good did you do today?"){
$scope.textBoxMessage = "Here you can edit your post by entering a new message and pressing edit on the affected post" + "\n \n" + "Your post:" + "\n" + message.post;
}
else{
$scope.message.post="hello"; //$scope.newMessage
$scope.messages.$save(2);
}
}
用户在文本字段中输入了一些文本,我想用已存储的数据替换它。这通过用sometext覆盖message.data。因为我读了这样的数据:
var list = fbutil.syncArray('posts/'+user.uid);
我也试着简单地说:
message.post = $scope.newMessage;
list.$save()
这两种方法都不起作用,但我确定这是一个小错误。
ED: 根据angularFire api,请访问:https://www.firebase.com/docs/web/libraries/angular/api.html#angularfire-firebasearray-save-recordorindex
list[2].post = "hello";
list.$save(2);
应该可以工作,但我没有运气。
答案 0 :(得分:0)
好的,这就是我如何解决它:
问题更多地与if else语句有关,然后与服务器代码本身有关。 $ scope.textBoxMessage总是如此,无论如何,这都是困扰我的。即使我说if($ scope.textBoxMessage =" hi")也是如此。
我不确定为什么会这样,但如果您有任何建议,请随时发表评论。
这就是我解决它的方法:
// Edit a post
$scope.editMe = function(message) {
if($scope.newMessage == null){
$scope.textBoxMessage = "Here you can edit your post by entering a new message and pressing edit on the affected post" + "\n \n" + "Your post:" + "\n" + message.post;
}
else{
message.post = $scope.newMessage;
list.$save(message);
$scope.textBoxMessage = chatmessage;
$scope.newMessage = null;
}
}