【问题标题】:update value document ID firestore更新有价文件 ID 火库
【发布时间】:2018-10-08 20:31:25
【问题描述】:

我需要从 Firestore 中的集合更新文档值。我有以下内容对我有用,但仅适用于身份证件。但是,如果我有一千条记录,我该如何更新它们?如何自动获取文档 ID?

https://stackblitz.com/edit/angular-ea3wme

我需要的是,每次单击update 按钮时,(该行的)state 列的值都会更改为false

myService.ts

updateEstado(){
  this.afs.doc('domiciliarios/OI4GXrNTLncFQpaXajdy').update({
    estado : false
  });
}

myComponent.ts

actualizarEstado(){
  this.fs.updateEstado();
}

myComponent.html

<td>
    <button class="btn btn-outline-primary btn-sm" (click)="actualizarEstado()">Editar</button>
</td>

【问题讨论】:

  • 您是说要迭代集合中的所有文档并对所有文档进行更改?
  • 不是针对每个人,而是针对每个特定文档
  • 我不知道你所说的“不适合所有人”是什么意思。
  • 我觉得我表达得不好,我做了一个satckblitz请看:stackblitz.com/edit/angular-ea3wme我需要的是每次点击update按钮时Estado列的值(该行的)更改为false。他让我明白了吗?

标签: angular typescript firebase google-cloud-firestore


【解决方案1】:

你的按钮应该在调用函数时发送密钥,就像这样:-

myComponent.html

<td>
   <button class="btn btn-outline-primary btn-sm" (click)="actualizarEstado(domiciliario.id)">Update</button>
</td>

myComponent.ts

actualizarEstado(key){
    this.fs.updateEstado(key);
}

myService.ts

updateEstado(key){
    this.afs.doc('domiciliarios/' + key).update({
      estado : false
    })
}

希望这会有所帮助。

【讨论】:

  • 谢谢,这对我有用,我会将其标记为正确答案。一个附加查询如果默认值为false,我如何迭代以使其更改为true,反之亦然?我正在尝试 if / else if (estado = true) {estado: false;}, else: {status: true} 但它标志着我的错误。
  • 抱歉回复晚了,但我在 Stackblitz 上查看过,您已经找到了解决方案。
猜你喜欢
  • 2017-07-30
  • 2019-06-01
  • 2019-06-01
  • 1970-01-01
  • 2020-05-28
  • 2017-03-26
  • 1970-01-01
  • 2021-08-23
  • 2016-08-21
相关资源
最近更新 更多