我刚刚将Flow添加到我的Create-React-App项目中,并且在将我的一些计算代码转换为flow-typed时,我遇到了这个错误,其中包含一个被破坏的“object as params”
原始签名:
calcWeightOnConveyor({ tonsPerHour, conveyorLength, conveyorSpeed })
流式后:
calcWeightOnConveyor({ tonsPerHour: number, conveyorLength: number, conveyorSpeed: number }): number
错误:
$ flow
Error: src/utils/vortex/calculate.js:31
31: export function calcWeightOnConveyor({ tonsPerHour: number, conveyorLength: number, conveyorSpeed: number }) {
^^^^^^ Strict mode function may not have duplicate parameter names
有没有办法以这种方式使用流与对象解构,还是应该重新设计这些函数API?
答案 0 :(得分:6)
通常我遵循的模式,特别是功能组件道具如下:
type Props = {
prop: Type,
};
const Component = ({
prop,
}: Props) => ();
答案 1 :(得分:3)
是的,你可以通过注释整个对象来实现,如下所示:
calcWeightOnConveyor({
tonsPerHour,
conveyorLength,
conveyorSpeed
}: {
tonsPerHour:number,
conveyorLength:number,
conveyorSpeed:number
}):number