更改网络聊天控件中建议操作按钮的字体
Change font of suggested actions buttons in webchat control
我尝试更改 "suggested actions" 按钮的字体,类似于此示例中显示的更改气泡文本字体的方式:
https://github.com/Microsoft/BotFramework-WebChat/blob/master/SAMPLES.md
在示例中,他们更改了 "textContent" 元素的 fontFamily。
我试图通过这样的东西:
styleSet.suggestedAction= {
...styleSet.suggestedAction,
"> button.fontFamily": "'Xy font', sans-serif"
};
但我不是 css 英雄,因此感谢您的帮助
您有两种选择。您选择哪个取决于您希望更改的粒度。
第一个选项是简单地更新在 React 中呈现 Web Chat 时生成的默认值。为此,您只需通过 renderWebChat
.
传递新值即可
这是 BotFramework-WebChat 团队推荐的方法,因为它显着降低了开发人员在开发过程中破坏更改的机会。它还会保留其他默认值,这意味着只会更改您更改的属性。
请注意,此选项将全局更改网络聊天的字体。
const styleOptions = {
primaryFont: "'Arial', sans-serif"
}
[...]
window.WebChat.renderWebChat( {
directLine: [...],
styleOptions
});
第二个选项是创建一个新的样式集并在其中指定您想要的更改。但是,由于您直接指定了 DOM 元素和 属性,尽管是通过网络聊天,如果网络聊天的某些方面收到更改元素或使用的 属性 的更新,这可能会导致对你来说是一个重大的改变。此外,您需要传递所有必要的 属性 值,因为这会从网络聊天中删除所有默认值。
您仍然可以使用默认样式集属性传递值,包括 primaryFont
。但是,对于真正的自定义,您可以通过 styleSet.suggestedAction
添加它们。如果需要引用它们,您可以在 BotFramework-WebChat 存储库中找到默认值 here。
const styleSet = createStyleSet ( {
bubbleBackground: 'blue',
bubbleFromUserBackground: 'red',
bubbleBorderRadius: 18,
bubbleFromUserBorderRadius: 18,
} );
styleSet.suggestedAction = {
...styleSet.suggestAction,
'& > button': {
fontFamily: "'Arial', sans-serif"
}
window.WebChat.renderWebChat( {
directLine: [...],
styleSet
});
希望得到帮助!
我尝试更改 "suggested actions" 按钮的字体,类似于此示例中显示的更改气泡文本字体的方式: https://github.com/Microsoft/BotFramework-WebChat/blob/master/SAMPLES.md
在示例中,他们更改了 "textContent" 元素的 fontFamily。
我试图通过这样的东西:
styleSet.suggestedAction= {
...styleSet.suggestedAction,
"> button.fontFamily": "'Xy font', sans-serif"
};
但我不是 css 英雄,因此感谢您的帮助
您有两种选择。您选择哪个取决于您希望更改的粒度。
第一个选项是简单地更新在 React 中呈现 Web Chat 时生成的默认值。为此,您只需通过 renderWebChat
.
这是 BotFramework-WebChat 团队推荐的方法,因为它显着降低了开发人员在开发过程中破坏更改的机会。它还会保留其他默认值,这意味着只会更改您更改的属性。
请注意,此选项将全局更改网络聊天的字体。
const styleOptions = {
primaryFont: "'Arial', sans-serif"
}
[...]
window.WebChat.renderWebChat( {
directLine: [...],
styleOptions
});
第二个选项是创建一个新的样式集并在其中指定您想要的更改。但是,由于您直接指定了 DOM 元素和 属性,尽管是通过网络聊天,如果网络聊天的某些方面收到更改元素或使用的 属性 的更新,这可能会导致对你来说是一个重大的改变。此外,您需要传递所有必要的 属性 值,因为这会从网络聊天中删除所有默认值。
您仍然可以使用默认样式集属性传递值,包括 primaryFont
。但是,对于真正的自定义,您可以通过 styleSet.suggestedAction
添加它们。如果需要引用它们,您可以在 BotFramework-WebChat 存储库中找到默认值 here。
const styleSet = createStyleSet ( {
bubbleBackground: 'blue',
bubbleFromUserBackground: 'red',
bubbleBorderRadius: 18,
bubbleFromUserBorderRadius: 18,
} );
styleSet.suggestedAction = {
...styleSet.suggestAction,
'& > button': {
fontFamily: "'Arial', sans-serif"
}
window.WebChat.renderWebChat( {
directLine: [...],
styleSet
});
希望得到帮助!