nodejsのファイル操作に対するリベート地獄解決策

4576 ワード

私たちはnodejsのfsモジュールを知っています.ファイルに対する操作は一般的に非同期で行われています.例えば、ファイルに対する読み取り操作です.
 
  
const fs = require('fs');

fs.readFile('./a.txt',( error, data )=>{
   if(error) throw error;
   console.log(data);
   console.log(data.toString());
});


          ,              ,           ,
node            :promisify,      :
 
  
const fs=require('fs');
const promisify=require('util').promisify;

const read=promisify(fs.readFile);
read('./test/a.js').then((data)=>{
  console.log(data.toString());
}).catch((error)=>{
   console.log(error);
});

実はもう一つの方法があります.
const fs=require('fs');
const promisify=require('util').promisify;
const read=promisify(fs.readFile);

async function readTest() {
      try {
          const data=  await read('./test/.a.js');
          console.log(data.toString());
      }catch (error) {
          console.log(error)
      }
}