将对象解构与流类型相结合
Combining object destructuring with flow-typing
我刚刚将 Flow 添加到我的 Create-React-App 项目中,并且在将我的一些计算代码转换为流类型时,我遇到了一个解构的错误 "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?
是的,您可以通过如下方式注释整个对象来做到这一点:
calcWeightOnConveyor({
tonsPerHour,
conveyorLength,
conveyorSpeed
}: {
tonsPerHour:number,
conveyorLength:number,
conveyorSpeed:number
}):number
大体上我遵循的模式,尤其是功能组件道具如下:
type Props = {
prop: Type,
};
const Component = ({
prop,
}: Props) => ();
我刚刚将 Flow 添加到我的 Create-React-App 项目中,并且在将我的一些计算代码转换为流类型时,我遇到了一个解构的错误 "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?
是的,您可以通过如下方式注释整个对象来做到这一点:
calcWeightOnConveyor({
tonsPerHour,
conveyorLength,
conveyorSpeed
}: {
tonsPerHour:number,
conveyorLength:number,
conveyorSpeed:number
}):number
大体上我遵循的模式,尤其是功能组件道具如下:
type Props = {
prop: Type,
};
const Component = ({
prop,
}: Props) => ();