promisify 就是可以实现将一个异步函数promise化,进而可以使用promisifiedFunction(...args).then().catch();
const fs = require('fs');
const path = require('path');
const Promise = require('bluebird');
const filePath = path.join(__dirname, '../files/readAsyncTest.txt');
fs.readFile(filePath, (err, data) => err ? console.log(err.message) : console.log(data.toString()));
const promisifiedReadFile = Promise.promisify(fs.readFile);
promisifiedReadFile(filePath)
.then(data => console.log(`promisified: ${data}`))
.catch(err => console.log(err.message));