为什么我得到TypeError:dialog.addDialogTrigger不是函数?

时间:2018-02-17 10:13:42

标签: node.js botframework

我的机器人不再工作了:如果我向“/”对话框或其他对话框发送任何消息(例如“/ menu”)。 我总是得到相同的错误“TypeError:dialog.addDialogTrigger不是一个函数”

Bot Info:

  1. SDK平台:Node.js
  2. SDK版本:botbuilder 3.14.0
  3. 部署环境:

    1. Azure Bot服务
    2. 使用Emulator进行本地开发
    3. 代码示例

      bot.dialog('menu', require("./dialogs/menu"))
          .triggerAction({
              matches: /^#menuderungly$/i
          });
      

      知道如何应对吗? 非常感谢你的帮助!

1 个答案:

答案 0 :(得分:0)

您似乎正在尝试调用另一个文件上的对话框。在这种情况下,您必须像在任何其他NodeJs函数中一样声明该文件中的对话框:

parentDialog.js

var childrenDialogs = require('./childrenDialogs'); 
...
...
// this is where the base dialog handles the conversation over to another dialog
bot.dialog('/', childrenDialogs.childDialog1); 

childrenDialogs.js:

exports.childDialog1 = (session) => {
    // something in this dialog
}

我希望这会有所帮助。干杯! :)