用Promise解读多个文件的内容
//引入fs模块
const fs = require('fs');
//Promise函数
const p = new Promise((resolve,reject)=>{
fs.readFile("./resources/aaa.md",(err,data1)=>{
fs.readFile("./resources/bbb.md",(err,data2)=>{
fs.readFile("./resources/ccc.md",(err,data3)=>{
let result = data1 + '\r\n' + data2 + '\r\n' + data3
resolve(result);
})
})
})
})
p.then(function(value){
console.log(value.toString());
},function(reason){
console.warn("读取文件失败!!!");
})
//解决以上回调函数的问题
function f1(){
return new Promise((resolve,reject)=>{
fs.readFile("./resources/aaa.md",(err,data)=>{
if(err) return reject(err)
resolve(data)
})
})
}
function f2(){
return new Promise((resolve,reject)=>{
fs.readFile("./resources/bbb.md",(err,data)=>{
if(err) return reject(err)
resolve(data);
})
})
}
function f3(){
return new Promise((resolve,reject)=>{
fs.readFile("./resources/ccc.md",(err,data)=>{
if(err) return reject(err)
resolve(data);
});
});
}
f1().then((value)=>{
console.log(value.toString());
},f2().then((value)=>{
console.log(value.toString());
},f3().then((value)=>{
console.log(value.toString());
})))