Node.js TypeError:无法读取属性';简单响应';未定义的
我正在dialogflow中开发一个开放式问答聊天机器人。输入响应时,它有时接受响应,有时抛出此错误: TypeError:无法读取DialogflowConversation.response上未定义的属性“simpleResponse” 这是我的密码:Node.js TypeError:无法读取属性';简单响应';未定义的,node.js,dialogflow-es,actions-on-google,Node.js,Dialogflow Es,Actions On Google,我正在dialogflow中开发一个开放式问答聊天机器人。输入响应时,它有时接受响应,有时抛出此错误: TypeError:无法读取DialogflowConversation.response上未定义的属性“simpleResponse” 这是我的密码: app.intent('First', (conv) => { const ans = conv.parameters.any; if(type[0] === 'RATING'){ if(ans == 1
app.intent('First', (conv) => {
const ans = conv.parameters.any;
if(type[0] === 'RATING'){
if(ans == 1){
senddata[0] = qstion[0] + ans;
conv.ask(qstion[1]);
}
else if(ans == 2){
senddata[0] = qstion[0] + ans;
conv.ask(qstion[1]);
}
else if(ans == 3){
senddata[0] = qstion[0] + ans;
conv.ask(qstion[1]);
}
else if(ans == 4){
senddata[0] = qstion[0] + ans;
conv.ask(qstion[1]);
}
else if(ans == 5){
senddata[0] = qstion[0] + ans;
conv.ask(qstion[1]);
}
else if(ans === 'can you help me' || ans === 'help' || ans === 'help me'){
checkhelp_logout = "help";
flag_log_help = 2;
conv.ask('Would you like some help?');
}
else if(ans === 'logout'){
checkhelp_logout = "logout";
flag_log_help = 2;
conv.ask('Did you say logout?');
}
else if(ans === 'sign out'){
checkhelp_logout = "logout";
flag_log_help = 2;
conv.ask('Did you say sign out?');
}
else{
conv.add('Please enter a valid number');
conv.ask(qstion[0]);
}
}
else{
if(ans === 'can you help me' || ans === 'help' || ans === 'help me'){
checkhelp_logout = "help";
flag_log_help = 2;
conv.ask('Would you like some help?');
}
else if(ans === 'logout'){
checkhelp_logout = "logout";
flag_log_help = 2;
conv.ask('Did you say logout?');
}
else if(ans === 'sign out'){
checkhelp_logout = "logout";
flag_log_help = 2;
conv.ask('Did you say sign out?');
}
else{
//conv.add(ans);
senddata[0] = qstion[0] + ans;
conv.ask(qstion[1]);
}
}
});
类型数组存储问题的类型,即是评级问题还是描述性问题。qstation数组存储来自API的问题。
你能帮我解释一下为什么它有时有效,有时无效。在什么情况下会出现这种错误?你知道当你遇到错误时你所处的代码的“分支”是什么吗?当你遇到错误时,你能提供包括几行代码点在内的全部细节吗?拥有完整的stacktrace有助于确定此问题可能发生的位置。我最初的猜测是,
qstation[1]
有时是未定义的。@KLP它基本上出现在评级部分,我将答案与1比5进行比较。@NickFelker qstation[1]工作正常,没有问题,它对用户的响应有问题。例如,如果我输入4,它会显示这个错误,当我在下一次测试中再次输入4时,它会完全正常工作。你能验证你在代码中得到了正确的参数吗?在什么条件下你会得到这个错误?你知道当你遇到错误时你所处的代码的“分支”是什么吗?当你遇到错误时,你能提供包括几行代码点在内的全部细节吗?拥有完整的stacktrace有助于确定此问题可能发生的位置。我最初的猜测是,qstation[1]
有时是未定义的。@KLP它基本上出现在评级部分,我将答案与1比5进行比较。@NickFelker qstation[1]工作正常,没有问题,它对用户的响应有问题。例如,如果我输入4,它会显示这个错误,当我在下一次测试中再次输入4时,它会完全正常工作。你能验证你在代码中得到了正确的参数吗?