firebase / firebase/firebase-admin-node

Typescript errors TS2345 on update method

未关闭
#2,372 1 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看
needs-triage
主要语言
TypeScript
星标
1.7k
派生
419
平均合并
3 天 10 小时
30 天内合并 PR
16

描述

### [READ] Step 1: Are you in the right place?
Yes

### [REQUIRED] Step 2: Describe your environment

* Operating System version: Ubuntu 22.04
* Firebase SDK version: 11.11.0
* Firebase Product: firebase-admin
* Node.js version: 18
* NPM version: 9.7.2

### [REQUIRED] Step 3: Describe the problem

`DocumentSnapshot` or `DocumentReference` `update` method can't be used with typed interfaces. I get the following typescript error

```
TS2345: Argument of type  MyInterface  is not assignable to parameter of type

{ [x: string]: any; } & AddPrefixToKeys
```

#### Relevant Code:

Calls like this will get errors:

```typescript
const data = snapshot.data() as MyInterface;
db.collection(`anypath`).doc(id).update(data)

```

Quick workaround would be to cast it as any

```typescript
db.collection(`anypath`).doc(id).update(data as any)
```

But it would require to refactor every `update` call which can be painful for large projects.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。