Typescript 类型不匹配&引用;。。。类型“”中缺少以下属性;

Typescript 类型不匹配&引用;。。。类型“”中缺少以下属性;,typescript,Typescript,我想做两件事: 1:使用名称动态导入包 2:断言包的类型(我知道它将返回什么) 类型任务=[ 对象 作用 ]; const gettask:Promise=async(名称:Array)=>{ const pkgs=names.map(name=>import(name)作为承诺); 全部退货承诺(包装件) } 错误输出: Type '(names: string[]) => Promise<[Object, Function][]>' is missing the foll

我想做两件事: 1:使用名称动态导入包 2:断言包的类型(我知道它将返回什么)

类型任务=[
对象
作用
];
const gettask:Promise=async(名称:Array)=>{
const pkgs=names.map(name=>import(name)作为承诺);
全部退货承诺(包装件)
}
错误输出:

Type '(names: string[]) => Promise<[Object, Function][]>' is missing the following properties from type 'Promise<[Object, Function][]>': then, catch, [Symbol.toStringTag], finallyts(2739)
index.ts(55, 35): Did you mean to call this expression?
Type'(name:string[])=>Promise'缺少类型“Promise”中的以下属性:然后,catch,[Symbol.toStringTag],finallyts(2739)
ts(55,35):你的意思是叫这个表达式吗?

Typescript:3.3.3

您的意思是调用此表达式吗?
在错误消息中表示函数位于期望值的位置
gettask
声明为
Promise
,但右侧的表达式是函数

根据意图的不同,有两种选择。要么立即调用该函数:

const gettask:Promise=(异步(名称:数组)=>{
const pkgs=names.map(name=>import(name)作为承诺);
全部退货承诺(包装件)
})(['package-1','package-2']);
或者(如名称
getTasks
所建议的)修复类型以反映
getTasks
是一个函数:

const gettask:(名称:数组)=>Promise=async(名称:数组)=>{
const pkgs=names.map(name=>import(name)作为承诺);
全部退货承诺(包装件)
}
//或
const gettask=async(名称:数组):Promise=>{
const pkgs=names.map(name=>import(name)作为承诺);
全部退货承诺(包装件)
}

嗯,我想是一个小的打字错误吧?你可能想写这个

const getTasks = async (names: Array<string>): Promise<Task[]> => { ... }
const gettask=async(名称:数组):Promise=>{…}