同步与异步的区别:
同步:
同步的思维是:所有的操作都做完,才返回给用户。这样用户在线期待的工夫太长,给用户一种卡死了的感觉(就是零碎迁徙中,点击了迁徙,界面就不动了,然而程序还在执行,卡死了的感觉)。这种状况下,用户不能敞开界面,如果敞开了,即迁徙程序就中断了。
异步:
将用户申请放入音讯队列,并反馈给用户,零碎迁徙程序曾经启动,你能够敞开浏览器了。而后程序再缓缓地去写入数据库去。这就是异步。然而用户没有卡死的感觉,会通知你,你的申请零碎曾经响应了。你能够敞开界面了。
promise all异步用法:
getType=(data)=>{ return new Promise(function(resolve, reject){ resolve(data); //输入数据 });}getHeader=(data)=>{ return new Promise(function(resolve, reject){ resolve(data); //输入数据 });}getList=(data1,data2)=>{ this.setState({ data1, data2, })} Promise.all([ this.getType(1), this.getHeader(2) ]).then((results)=>{ var data1=results[0]; var data2=results[1]; this.getList(data1,data2); })