Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我可以从typescript中的承诺返回数组列表吗_Javascript_Typescript - Fatal编程技术网

Javascript 我可以从typescript中的承诺返回数组列表吗

Javascript 我可以从typescript中的承诺返回数组列表吗,javascript,typescript,Javascript,Typescript,我需要在typescript中返回承诺中的数组列表。 这是我的实现,它不起作用。在这件事上我需要认真的帮助 const promise = new Promise((resolve, reject) => { let onbidJobs:any = [...objects]; let awardedJobs:any = [...objects]; let completedJobs:any = [...objects]; //return the

我需要在typescript中返回承诺中的数组列表。 这是我的实现,它不起作用。在这件事上我需要认真的帮助

const promise = new Promise((resolve, reject) => {    
    let onbidJobs:any = [...objects];
    let awardedJobs:any = [...objects];
    let completedJobs:any = [...objects];

    //return the jobs
    resolve({
        onbid: onbidJobs,
        awarded: awardedJobs,
        completed: completedJobs
    });
});

let returnedonbid:any;
let returnedaward:any;

promise.then((resolve) => {
   this.returnedaward = resolve.awarded;
   this.returnedonbid = resolve.onbid;  //<-- I really want to return my arrays like this
});
const promise=new promise((解析,拒绝)=>{
让onbidJobs:any=[…对象];
let awardedJobs:any=[…对象];
让completedJobs:any=[…对象];
//还工作
决心({
onbid:onbidJobs,
获奖者:获奖者,
已完成:已完成作业
});
});
让我们返回nbid:任何;
让我们返回:任何;
承诺。然后((解决)=>{
this.returnedward=resolve.designed;

this.returnedonbid=resolve.onbid;//您不应该使用
:any
。而是尽可能定义对象的实际类型。此外,您应该像这样定义
Promise
返回类型:

const promise=新承诺((解析,拒绝)=>{。。。
定义了
Promise
的返回类型后,您将获得
上的类型信息,然后是
的参数


您还可以使用接口绑定类型,这样它就不会使代码膨胀,尤其是当您多次需要它时。

您不应该使用
:any
。而是尽可能定义对象的实际类型。此外,您应该定义
Promise
返回类型,如下所示:

const promise=新承诺((解析,拒绝)=>{。。。
定义了
Promise
的返回类型后,您将获得
上的类型信息,然后是
的参数


您还可以使用接口绑定类型,这样它就不会使代码膨胀,尤其是当您多次需要它时。

上述代码应该可以工作。
resolve
中当前返回的内容(
console.log()
then()
回调中)?再看一下:作业本身是异步操作吗?不知道如何操作?您是否有可能试图访问
此。returnedonbid
然后
处理程序之外--在填充之前?我的错误是[ts]属性“onbid”在类型“{}”上不存在“.any上述代码应该可以工作。当前在
resolve
中返回的内容(
console.log()
then()
回调中)?再看一下:作业本身是异步操作吗?不知道如何操作?您是否有可能试图访问
此。returnedonbid
然后
处理程序之外--在填充之前?我的错误是[ts]属性“onbid”在类型“{}”上不存在'. any@EmekaObianom,我想你可能在编辑中漏掉了一些东西…除非你无法知道类型,否则你应该避免使用
any
。但是,否则,我认为你已经掌握了要点。@EmekaObianom,我想你可能在编辑中漏掉了一些东西…你应该避免使用
any
,除非你不可能知道这是什么类型的,但除此之外,我认为你已经掌握了事物的本质。
const promise = new Promise<{onbid:any, awarded:any, completed:any}>((resolve, reject) => { ...