首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >botbuilder DialogTestClient的sendActivity只接受字符串,不接受数字

botbuilder DialogTestClient的sendActivity只接受字符串,不接受数字
EN

Stack Overflow用户
提问于 2021-09-20 15:55:00
回答 1查看 19关注 0票数 0

我在测试时使用了僵尸生成器DialogTestClient的sendActivity方法来向我的机器人发送提示,但该方法只接受字符串类型,并且在我的机器人中我使用数字提示来提示用户输入数字。你知道我该如何解决这个问题吗?

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2021-09-21 14:00:02

我不清楚你是只对DialogTestClient还是所有客户端都有这个问题,但在nodejs中,你可以使用Number(promptInput)将字符串转换为数字。如果promptInput已经是一个数字,它仍然可以正常工作。我假设在C#中也有类似的函数。

编辑:一些附加的上下文。您可以在多轮提示示例中查看userProfileDialog.js的示例。本质上,NumberPrompt在识别器中有一个"succeeded“属性,确保您输入一个数字。您可以在验证器函数中使用它以及您想要的任何验证。如果成功并通过验证,则会将一个数字而不是字符串传递到对话框中的下一步。

如果在尝试向用户重复提示值时出现错误,则需要将其转换为字符串。我倾向于使用反引号(模板字符串/文字),例如

代码语言:javascript
复制
await step.context.sendActivity(`You entered ${step.result}`);

其中step.result是numberPrompt结果。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69257470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档