Nodejs和microsoft bot框架

时间:2017-05-18 04:22:37

标签: node.js

我在这里查看nodejs代码 https://github.com/Microsoft/BotBuilder/blob/master/Node/examples/basics-waterfall/app.js

我正在尝试理解这段代码

var bot = new builder.UniversalBot(connector, [
    function (session) {
        ...
    },
    function (session, results) {
        ...
    },
    function (session, results) {
       ...
    },
    function (session, results) {
        ...
    }
]);

我理解 var bot是一个函数表达式,它接受两个参数,一个是连接符,另一个是函数数组。

这些函数数组是按照它们的定义顺序执行的吗?

从其他编程背景来看,我不熟悉这种方言。

如何使这个程序更像C#as async等待答案?

如果async await是答案,我如何将其转换为使用async / await范例?

1 个答案:

答案 0 :(得分:0)

是的,似乎他们按照定义的顺序执行。

你应该只提供该数组中的函数体,实际执行发生在bot实现的某个地方,所以你必须在那里寻找更清晰的图像。

但从这个例子和常识来看,很明显它们是按顺序执行的。它是一个机器人,按照定义的顺序回答问题。

我不确定你在这个上下文中对“async”的理解是什么,但是如果你想让它回答任意请求,你可以看看其他例子,比如 basics-logging