nodeJS 中關於 promise 的使用

var readInfo = function (fileName) {
    var defer = q.defer();
    fs.readFile(fileName, {encoding:'utf-8'}, function (err, data) {
        if(err){
            defer.reject(err)
        }else{
            defer.resolve(data)
        }
    })
    return defer.promise;
}

 

 readInfo('count.txt')
     .then(function(data){
         console.log("pro::",data)
     },function(){

     })

  

經過建立一個具備promise屬性的defer對象,若是成功獲取到值則調用defer.resolve(value),若是失敗,則調用defer.reject(reason),最後返回defer的promise屬性便可。這個過程能夠理解爲調用defer.resolve將Promise的狀態變成Fulfilled,調用defer.reject將Promise的狀態變成Rejected。
相關文章
相關標籤/搜索