Node.js 扩展按钮以显示长消息 前言

Node.js 扩展按钮以显示长消息 前言,node.js,botframework,Node.js,Botframework,我目前正在Node.js中编写Microsoft的Botbuilder SDK 问题 在提示用户从一组可单击按钮选项中进行选择的情况下,按钮的文本会被附加的省略号截断。以下是使用Microsoft的Bot Framework Emulator的示例: 代码如下: bot.dialog('mainMenu', [ (session, args, next) => { // buttonOptions is an array of size 4 all with th

我目前正在Node.js中编写Microsoft的Botbuilder SDK

问题 在提示用户从一组可单击按钮选项中进行选择的情况下,按钮的文本会被附加的省略号截断。以下是使用Microsoft的Bot Framework Emulator的示例:

代码如下:

bot.dialog('mainMenu', [
    (session, args, next) => {
        // buttonOptions is an array of size 4 all with the
        //     string 'VERY LONG TEXT THAT GETS CUT OFF'
        builder.Prompts.choice(session, 'What would you like to do?'
        , buttonOptions, { listStyle: builder.ListStyle.button });
    }
]);
期望的结果 我想显示按钮的全部文本。我知道listStyle:list显示了整个文本,但我正在寻找一种允许使用按钮的解决方案

问题
有没有办法展开按钮,在这些类型的提示中显示长文本的整个长度?欢迎不限于此列表样式的其他透视图。

选择的显示方式由每个频道实现,因此您可以专注于目标频道

一些通道实现(通常是emulator和webchat)是开源的,您可以创建自己的fork来构建所需的行为

仿真器 Bot框架的模拟器源位于

网络帽 我已经回答了一个关于定制webchat以显示所有按钮文本的类似问题。为避免重复,请直接在此处查看:

它允许呈现多行按钮,如下所示:

您可以添加到文本“\n”。所以按钮看起来像这样


为了获得更好的结果,我确定了一个最大值并将字符串长度除以。有了这个号码,我就分手了。在我搜索最后一个空格以放置“\n”之后

它们的呈现方式将取决于通道,如果您的机器人正在WebChat中使用,则可以更改按钮的样式。