首页 > 解决方案 > 定义 Typescript 返回类型和道具

问题描述

从函数返回类型的正确打字稿语法是什么,同时还定义了它接受的道具?

interface Item {
  [key: string]: {
    value: number;
  };
}

const items: Item = {
 foo: {
   value: 1
 }
}

interface ItemsGetterProps {
  something: boolean
}

const getItems: ({ something }: ItemsGetterProps) => Item => some_function(items, something) // returns Item

标签: typescript

解决方案


您不能从函数返回类型,但这就是我认为您的意思:

const getItems: ((props: ItemsGetterProps) => Items) = ({ something }) => {
    return some_function(items, something);
}

或者

const getItems: ((props: ItemsGetterProps) => Items) = ({ something }) => some_function(items, something);

推荐阅读