javascript - 流类型 - 数组对象

标签 javascript flowtype

我有这样的对象:

{
  one: [
    {
      a: "some",
      b: "some",
    }
  ],
  two: [
    {
      a: "some",
      b: "some",
    }
  ],

  ...
}

此示例的正确类型是什么?

最佳答案

你去吧

/* @flow */


type MyType = {
  [key: string]: Array<{ a: string, b: string }>,
};

function myFunc(obj: MyType) {
  return obj;
}


const myObj = {
  one: [
    {
      a: 'some',
      b: 'some',
    }
  ],
  two: [
    {
      a: 'some',
      b: 'some',
    }
  ],
};

const doSomething = myFunc(myObj); // No errors

Live demo


文档:

Objects as maps doc 你会发现 对于像这样的对象,Flow 提供了一种特殊的属性,称为“索引器属性”。索引器属性允许使用与索引器键类型匹配的任何键进行读取和写入。 使用专用语法:{ [user_id: number]: string }

关于javascript - 流类型 - 数组对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49129182/

相关文章:

javascript - 在 jquery 中注册事件 vs 在 html 标签中注册事件

javascript - 输入一个函数,如果参数未定义,则返回未定义

javascript - 如何在flowjs中指定一个可以未定义的参数

reactjs - 如何通过流程输入高阶组件

javascript - 无法对迭代器上可能未定义的值调用函数

javascript - “计算属性”可能只是流中的文字值?

javascript - 允许中间有一个空格但有字符限制的正则表达式。

javascript - 如何将字符串转换为 DOM 并在其中进行选择

javascript - 在 div 中随机创建和定位元素

javascript 警报功能不会显示对象