看一下这个界面:

interface IParams {
    [string]: number|string|Date
};


我正在使用此接口来验证通过参数传递的对象,如下所示:

someObject.do = function(params: IParams|void): void { ... }


它工作正常,但问题在于访问param的属性:

someObject.do = function(params: IParams|void): void {
    // property `name` (Property not found in IParams)
    const name = params.name;
    ...
}


我想使用没有任何详细信息的IParams,只想验证它的键值类型。

我该如何解决?任何建议将不胜感激。

最佳答案

您已将IParams定义为类通用的字典对象,是否需要向Flow明确表示您希望像字典一样使用它,并且

const name = params['name'];

08-08 04:26