Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 键入Object.values(users.forEach)_Typescript - Fatal编程技术网

Typescript 键入Object.values(users.forEach)

Typescript 键入Object.values(users.forEach),typescript,Typescript,我想知道如何修复此代码,如果我在forEach((room:string)上将房间类型更改为string,我会遇到以下错误: 类型为“(room:string)=>void”的参数不能分配给类型为“(值:未知,索引:编号,数组:未知[])=>void”的参数。 参数“room”和“value”的类型不兼容。 类型“未知”不可分配给类型“字符串” 否则,如果我留空,我必须将房间转换为批处理.更新行上的字符串 Object.values(users).forEach((room: string) =

我想知道如何修复此代码,如果我在
forEach((room:string)
上将房间类型更改为string,我会遇到以下错误:

类型为“(room:string)=>void”的参数不能分配给类型为“(值:未知,索引:编号,数组:未知[])=>void”的参数。 参数“room”和“value”的类型不兼容。 类型“未知”不可分配给类型“字符串”

否则,如果我留空,我必须将
房间转换为
批处理.更新
行上的字符串

Object.values(users).forEach((room: string) => {
  batch.set(firestore.collection('messages').doc(), {
    ...message,
    room,
  })

  batch.update(firestore.collection('rooms').doc(room), { // if I leave room as `unknow` I have an error here.
     ...
  })
})

修复类型的正确方法是什么?

简单地声明回调参数类型应该可以

Object.values(users).forEach(s=>/*…*/)

太好了。谢谢!