我正在为alexa编写节点js函数,并且必须进行API调用。如果这是一个纯文本,我会得到响应,否则它会给我如下错误。
feedback is not a function\nStacktrace:\n====================\nTypeError: feedback is not a function\n
这是我的代码。
var apiServices = require('./apiServices.js');
feedback();
var feedback = () => {
if (!session.attributes.pin) {
response.speechText = "Absolutely, I can help with that. What is the PIN Number??";
response.repromptText = "What is the PIN Number??";
response.shouldEndSession = false;
response.done();
} else {
apiServices.getCaseStatus("status", function(data) {
if (data) {
console.log(data.length);
response.speechText = `you have total ${data.length} pending cases`;
response.repromptText = " Is there anything else that I can Help you with?";
response.shouldEndSession = false;
session.attributes.shouldLoop = true;
response.done();
}
});
}
}
这里不是在else
中进行API调用,如果我使用下面的文字。
else {
response.speechText = `you have total ${data.length} pending cases`;
response.repromptText = " Is there anything else that I can Help you with?";
response.shouldEndSession = false;
session.attributes.shouldLoop = true;
response.done();
}
工作正常。请让我知道我哪里出错了,我该怎么办呢。
由于
答案 0 :(得分:1)
我打算冒险猜测在同一个文件中你有一个名为feedback
的东西在别处定义。正在使用该定义而不是函数。要解决此问题,请交换订单,以便在定义后调用函数。调整变量名称可能也是一个好主意,因此您不会对不相关的事物使用相同的名称。