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=>/*…*/)
太好了。谢谢!