最初,我有这样的代码:
handleOnSelectFile = event => {
// a lot of code using 'event', props, etc.
SomeFunction.parse(someVar, {complete: async results => {
// more code
this.setState({ someExampleState: true})});
}
});
}
现在我必须在async / await中使用一个函数,所以该函数将变为:
handleOnSelectFile = async event => {
// a lot of code using 'event', props, etc.
SomeFunction.parse(someVar, {complete: async results => {
// more code
await getAll(type);// <--- THIS IS NEW
this.setState({ someExampleState: true})});
}
});
}
我的问题是,在整个async
参数上使用handleOnSelectFile
时,内部代码是否可能发生意外行为?使用async/await
的唯一原因是我代码末尾的getAll
函数。
答案 0 :(得分:0)
否,不会有任何意外行为,因为在父函数中使用异步而不在块范围内使用等待与编写常规函数相同。 TLDR您只需要在子函数或阻止诺言的函数中的任何位置使用async / await关键字。