要使用 Future 在未来提供的值有两种方法,一种就是在执行异步函数的前面可以加上一个 await ,这样下面在控制台上输出的这个 vehicle 就会是执行 getVehicle 返回的那个 Future 在未来提供的值。
编辑器在 await 这里提示了一个问题,说 await 只能在 async 函数里面使用,当前我们是在 main 这个函数里,所以要在这个函数里使用 await ,得先把这个 main 函数用 async 标记一下。
然后再运行一下应用,你会发现这次在控制台上输出了一个表情符号。
还有一种方法可以使用 Future 在未来提供的值,可以使用 Future 上面提供的 then 这个方法。
再试一下,执行 getVehicle 这个函数,它会返回一个 Future ,这里我们继续调用一下这个 Future 上面提供的 then 这个方法,给它提供一个回调,让它接收一个 vehicle 参数,这个参数的值就是执行 getVechile 得到的那个 Future 在未来提供的值。用 print 输出这个 vehicle 。
运行一下应用,你会发现在控制台上会输出两次这个表情符号。