-2

我正在使用 ActionTypes.OpenUrl 创建在新选项卡中打开的链接,是否有任何解决方法可以在新窗口中打开链接。DirectLine 用于连接 Bot。谢谢

4

1 回答 1

0

我正在使用 ActionTypes.OpenUrl 创建在新选项卡中打开的链接,是否有任何解决方法可以在新窗口中打开链接。

为了满足您的要求,您可以尝试实施和使用自定义版本的网络聊天。在AdaptiveCardContainer.tsx中,修改代码以打开一个新窗口,如下所示:

private onExecuteAction(action: Action) {
    if (action instanceof OpenUrlAction) {
        /*window.open(action.url);*/
        window.open(action.url, "_blank","toolbar=no");
    } else if (action instanceof SubmitAction) {
        if (action.data !== undefined) {
            if (typeof action.data === 'object' && (action.data as BotFrameworkCardAction).__isBotFrameworkCardAction) {
                const cardAction = (action.data as BotFrameworkCardAction);

                this.props.onCardAction(cardAction.type, cardAction.value);
            } else {
                this.props.onCardAction(typeof action.data === 'string' ? 'imBack' : 'postBack', action.data);
            }
        }
    }
}

有关实现自定义网络聊天的更多信息,请参阅“<a href="https://github.com/Microsoft/BotFramework-WebChat#building-web-chat" rel="nofollow noreferrer">构建网络聊天”。

测试结果:

在此处输入图像描述

于 2018-08-13T02:49:16.150 回答