2017-12-18 192 views
0

我遇到了對象的問題,它包含承諾值並在Cilent端訪問它們。我想訪問值,但我收到的只是空的對象。客戶端上的空對象。如何正確傳遞承諾值?

這裏是服務器端的代碼:

router.get('/toExcess', function(req, res){ 
    console.log(req.query); 
    const response = logic.adder(req.query.a, req.query.b); 
    const convertToModular = logic.modularRecordExcess(response); 
    const convertToOpposite = logic.oppositeRecordExcess(response); 
    const convertToObjective = logic.objectiveRecordExcess(response); 
    convertToObjective.then(function (response) { 
    var add = { 
    modular: convertToModular, 
    opposite: convertToOpposite, 
    objective: convertToObjective, 
} 
console.log(add); 
res.send(add); 
}).catch(function(err){ 

}); 
}); 

,它是在服務器端控制檯日誌:

{ modular: Promise { [ '1.', '0111', '.', '1001', '0011' ] }, 
    opposite: Promise { [ '1.', '1000', '.', '0110', '1100' ] }, 
    objective: Promise { [ '1.', '1000', '.', '0110', '1101' ] } } 

和這裏的反應函數:

showExcess(){ 
    document.querySelector('.input-wrapper').style.display = 'inline'; 
    RestClient.getExcess(this.state.augend, this.state.addend).then((response) 
    => {  
this.setState({ 
     isReady: true 
    }); 
     console.log(response); 
    }); 
} 

和瀏覽器中的CONSOL.log結果: enter image description here

對象爲空。 有什麼建議嗎?我需要獲得模塊化,客觀和相反的價值觀。

+0

首先解決您的承諾。 Resolve.all([convertToModular,opposite,objective])。then(res.json); –

回答

0
router.get('/toExcess', function(req, res){ 
    console.log(req.query); 
    const response = logic.adder(req.query.a, req.query.b); 
    const convertToModular = logic.modularRecordExcess(response); 
    const convertToOpposite = logic.oppositeRecordExcess(response); 
    const convertToObjective = logic.objectiveRecordExcess(response); 
    Promise.all([convertToModular, convertToOpposite, convertToObjective]) 
    .then(function (response) { 
    var add = { 
     modular: response[0], 
     opposite: response[1], 
     objective: response[2], 
    } 
    console.log(add); 
    res.send(add); 
    //or you can pass res.json(response); 
    }) 
.catch(function(err){ 

}); 
}); 
+0

謝謝!有用 :) – marta

相關問題