如何键入数据库响应文档

时间:2018-08-27 11:17:54

标签: typescript couchdb couchdb-nano

我正在尝试使用CouchDB,它的nano npm库具有打字稿类型。我设法插入了文档,但是我不知道如何键入响应文档。这是获取数据的函数:

export const getAlarms = async (): Promise<IAlarm[]> => {
  const list = await db.list({ include_docs: true });
  const alarms = list.rows.map(alarm => {
    if (alarm.doc) {
      return Alarm.from(alarm.doc);}
    });
  return alarms;
};

打字稿在alarm.doc处引发错误:

  

[ts]   “文档”类型的参数不能分配给“ IAlarm”类型的参数。     类型“文档”中缺少属性“名称”。

我现在什么地方都找不到,该如何告诉TS该调用返回的文档属于我的类型,而不是简单的Document?

编辑:刚刚使用alarm.doc as IAlarm进行了修复-这种方法有多好?

0 个答案:

没有答案