gpt4 book ai didi

javascript - 返回 Promises 数组的函数类型应该是什么

转载 作者:行者123 更新时间:2023-11-30 13:53:54 26 4
gpt4 key购买 nike

我有一个函数,它基本上返回 Promises 数组。函数的返回类型应该是什么?下面是代码

const makeLabelNodesRequest: Promise<K8sResourceKind> = (selectedNode: NodeKind[]) => {
const labelPath = '/metadata/labels';
const labelData = selectedNode.map((node: NodeKind) => {
const labels = SelectorInput.arrayify(_.get(node, labelPath.split('/').slice(1)));
const lblVal = { ...SelectorInput.objectify(labels), ...labelObj };
const patch = [
{
op: labels.length ? 'replace' : 'add',
value: lblVal,
path: labelPath,
},
];
return k8sPatch(NodeModel, node, patch); // returns a promise
});
return labelData; //array of Promise

};

它给出了这个错误 - [ts] Type '(selectedNode: NodeKind[]) => Promise[]' 缺少类型 'Promise' 中的以下属性: then, catch, [Symbol.toStringTag]。请注意 NodeKind 和 K8sResourceKind 是自定义类型。

最佳答案

你有两个选择:

const makeLabelNodesRequest: Array<Promise<K8sResourceKind>>

或者

const makeLabelNodesRequest: Promise<K8sResourceKind>[]

第一个解决方案只是第二个解决方案的别名,应该由您的 IDE 自动完成指示。

这些解决方案没有彼此的优势,只是保持一致并在您的代码库中使用单一语法。

关于javascript - 返回 Promises 数组的函数类型应该是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57656982/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com