当前位置: 首页 > 面试题库 >

保存新属性将覆盖Firebase对象

米飞龙
2023-03-14
问题内容

我正在使用Firebase和angular进行测验。在测验的最后,我想使用以下代码将新属性保存到users对象:

function saveTopscore() {
    var ref = new Firebase(CONSTANTS.FIREBASE_URL + 'users/' + User.user.$id + '/');
    var userObject = $firebaseObject(ref);
    userObject.topscore = User.totalCorrect;
    userObject.$save().then(function(ref) {
        console.log("worked");
    }, function(error) {
        console.log(error);
    });
}

它可以工作,但也可以覆盖用户对象的所有属性。因此,该对象曾经像名称,用户名,电子邮件,密码等一样保存,但是当我按下topscore时,它成为该对象的唯一属性。为什么?


问题答案:

你为什么在这里使用$firebaseObject?仅在将其三向绑定到Angular视图时才有用。如果您使用的是常规JavaScript代码,则只需坚持使用Firebase的常规JavaScript
SDK。

在这种情况下,请执行以下操作:

ref.update({ topscore: User.totalCorrect });


 类似资料:
  • 问题内容: 我注意到编译器不会让我用另一个存储的值覆盖存储的属性(这似乎很奇怪): 但是,我可以使用计算属性来执行此操作: 为什么不允许我再给它一个值? 为什么用存储的属性覆盖是可憎的,而要使用计算的一个犹太洁食呢?他们在想什么呢? 问题答案: 为什么不允许我再给它另一个值? 绝对可以为继承的属性赋予不同的值。如果您在采用该初始值的构造函数中初始化属性,然后传递与派生类不同的值,则可以执行此操作:

  • 我有几个POJO,这将有一个货币数额。我的想法是创建一个通用对象(由货币和值组成),然后每当我想在我的POJOs中表示一个货币金额时,就会使用它: 由于将在多个POJO中使用,我无法用注释和属性,因为在所有情况下,列名并不总是相同的。有没有办法注释属性(如上例中的)以提供和属性的列名,以便jOOQ在映射/取消映射POJO时理解它们,类似于Hibernate解释请问?

  • 我在项目中使用Crudepository进行数据库操作。当我使用由Spring实现的保存方法更新持久化数据时,其他字段将被覆盖。例如,我只发送firstName进行更新,但lastName被转换为空字段。 简单地说,我用这样的实体调用保存方法: 我正在将此JSON发送到更新方法: Spring 将此 JSON 转换为 Rest api endpoint的成员。成员.java是: 如何防止覆盖其他字

  • 问题内容: 我正在考虑一个项目的春季数据。是否可以覆盖默认生成的保存方法?如果是的话,怎么办? 问题答案: 没有使它很好地工作,所以我将所需的逻辑放入服务类中,并保持存储库保存方法不变。

  • 问题内容: 在保存模型之前,我需要重新调整图片大小。但是,如何检查是否添加了新图片或仅更新了说明,以便每次保存模型时都可以跳过重新缩放? 我只想在加载新图像或更新图像时重新缩放,而在更新说明时不想要。 问题答案: 一些想法: 不确定是否可以在所有伪自动django工具中正常运行(例如:ModelForm,contrib.admin等)。

  • 问题内容: 保存模型之前,我需要重新调整图片大小。但是,如何检查是否添加了新图片或仅更新了说明,以便每次保存模型时都可以跳过重新缩放? 我只想在加载新图像或更新图像时重新缩放,而在描述更新时不想要。 问题答案: 一些想法: 不知道它是否可以在所有伪自动django工具中正常运行(例如:ModelForm,contrib.admin等)。