【发布时间】:2019-03-24 14:15:33
【问题描述】:
我尝试等待一个函数返回我的 mysql 表的值,并将其用作我的 const ProjektNameIntentHandler 的返回值。这是我的代码:
const ProjektNameIntentHandler = {
canHandle(handlerInput) {
return handlerInput.requestEnvelope.request.type === 'IntentRequest'
&& handlerInput.requestEnvelope.request.intent.name === 'ProjektNameIntent';
},
handle(handlerInput) {
let getProjektName = queryDb()
getProjektName.then(function(result) {
var projektName = result[0];
console.log(projektName.Test);
})
return handlerInput.responseBuilder
.speak(projektName.Test)
.withSimpleCard('Venture', projektName.Test)
.getResponse();
}
};
现在的问题是在projektName 得到结果之前得到ProjektNameIntentHandler 的结果。首先,我尝试将第二个 return 放入函数的范围内。但是这样一来,结果也属于函数而不是作为我的ProjektNameIntentHandler的回报。
所以我所做的所有归档都是 handlerinput 的第二次返回,等待我的 getProjektName.then 完成。我该怎么做?
【问题讨论】:
标签: javascript node.js json alexa alexa-skills-kit