的NodeJS給我一個警告誤導「調用回調沒有異步函數已被棄用」警告
(節點:32600)[DEP0013] DeprecationWarning:調用回調沒有一個異步 功能已被棄用。
當我運行這個「測試」:
describe('whatever',() => {
it('test simple', async() => {
const dir = './build/fileTests';
if (fs.existsSync(dir)) {
console.log(`deleting ${dir}`);
await fs.rmdir(dir);
}
});
});
嗯,我幾乎同意,使用異步函數沒有回調是壞的(因爲只有你能確切地知道CB內,它發生了,繼續等...
...如果它不是我故意使用的ES7 async
/await
,因爲它們使它同步,所以我可以用我得到的任何東西...(在這個特殊情況下,我可以迴避到rmdirSync,但這不是我的觀點......)
so my Question:我怎樣才能擺脫像這樣的警告?
- 以一種有意義的方式,異步/的await ... 工作時 - 處理返回值,如const r = ...
不被認爲是「回調處理」 ...
'異步/ await'不作異步代碼同步。它可能會喜歡它,但事實並非如此。 – robertklep
這讓我想起回調作爲異步謊言 –