在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/C  HTML/ node.js如何順序執(zhí)行方法?

node.js如何順序執(zhí)行方法?

RT.我寫了三個讀寫文件的方法,如下所示:

 fs.writeFile(filedir, field, function (err) {
                if (err) {
                  console.log(err);
                } else {
                  console.log('file done!');
                }
              });

fs.appendFile(filedir, , function (err) {
                if (err) {
                  console.log(err);
                } else {
                  console.log('catalog done!');
                }
              });

              //讀取上一份數(shù)據(jù)
fs.readFile(fieldir, 'utf8', (err, data) => {
                ....

現(xiàn)在是這樣的,我每次先存一份數(shù)據(jù)在一個新文件內(nèi),然后維護(hù)一個目錄文件,再從目錄文件里取出那個對應(yīng)文件的文件名,讀取這個存入的文件。問題是,每次都是文件還沒存入,讀取就已經(jīng)完成了,導(dǎo)致總是讀錯文件。有沒有辦法讓read這個地方晚執(zhí)行,或者其他方法讓三個方法順序執(zhí)行?保證先存,再讀。

回答
編輯回答
尐潴豬

Async waterfall

2017年2月15日 00:44
編輯回答
巴扎嘿

可以采用Promise鏈?zhǔn)秸{(diào)用,將存函數(shù)封裝成一個Promise函數(shù),在其執(zhí)行成功的resolve中,再執(zhí)行讀取內(nèi)容函數(shù)。可參考我這個項目里的代碼進(jìn)行封裝https://github.com/guangying1...,里面的upload上傳函數(shù)就是在文件內(nèi)容必須讀取后,然后再執(zhí)行發(fā)送函數(shù)。

2017年1月4日 15:39
編輯回答
脾氣硬

學(xué)習(xí)一下回調(diào)函數(shù)這個概念吧。。

2018年6月9日 08:26
編輯回答
安淺陌

異步async ,promise鏈?zhǔn)秸{(diào)用也行

2018年7月20日 18:59