Javascript 无法访问流抽象类型和函数-属性

Javascript 无法访问流抽象类型和函数-属性,javascript,function,flowtype,Javascript,Function,Flowtype,我正在用react native使用flow,我肯定遗漏了什么 我试图用语言来表达我的问题,但没有办法不让人感到困惑,所以情况如下: 我已经在这方面做了一段时间了,但不太明白为什么我不能使用我定义的属性 任何帮助都将不胜感激。我可能也会这样写代码 type Subscriber<P> = (params: P) => boolean; type ParkSelectedEventParams = { park_selected: {} }; let onParkS

我正在用react native使用flow,我肯定遗漏了什么

我试图用语言来表达我的问题,但没有办法不让人感到困惑,所以情况如下:

我已经在这方面做了一段时间了,但不太明白为什么我不能使用我定义的属性


任何帮助都将不胜感激。

我可能也会这样写代码

type Subscriber<P> = (params: P) => boolean;

type ParkSelectedEventParams = {
    park_selected: {}
};

let onParkSelected: Subscriber<ParkSelectedEventParams> = (params: ParkSelectedEventParams): boolean => {
      console.log(params.park_selected);
      return true;
};
类型订阅者

=(参数:P)=>布尔值; 类型ParkSelectedEventParams={ 所选公园:{} }; let onParkSelected:Subscriber=(参数:ParkSelectedEventParams):布尔=>{ 控制台日志(已选择参数park_); 返回true; };

()

或者我相信你可以把最后一部分删减到

let onParkSelected: Subscriber<*> = (params: ParkSelectedEventParams): boolean => {
      console.log(params.park_selected);
      return true;
};
let onParkSelected:Subscriber=(参数:parkselectedeventpams):布尔=>{
控制台日志(已选择参数park_);
返回true;
};

由于函数声明部分允许Flow知道如何填写
*

,它改变了我的应用程序中的很多东西,但现在可以工作了,因此我必须反复阅读这篇文章,才能理解为什么我一开始就错了,为什么这样更好;)谢谢你可以让onParkSelected:Subscriber=params=>{/*etc*/},因为
Subscriber
已经对函数本身进行了注释。@kalley是的,这当然也是一个选项。