gmail-addons - 如何使用 UniversalAction 禁用导航
问题描述
我正在构建一个带有注销按钮的附加组件。此注销按钮是一个通用操作。据我所知,这是此按钮的绑定功能:
function logout(e) {
...
resetOAuth();
return CardService
.newUniversalActionResponseBuilder()
.displayAddOnCards([buildAddOn(e)])
.build();
}
这样做的问题是新卡呈现导航。因此,屏幕上会显示一个“后退按钮”。我无法以不同的方式做到这一点。据我所知,Trello 插件和许多其他插件在应用注销时会呈现一张简单的卡片,而没有打开“后退”按钮导航。
我还需要尝试什么?如何避免通用操作上的导航?
解决方案
使用CardAction而不是 UniversalAction,这样您就可以避免使用后退按钮:
function sidebarTrigger () {
return isUserLoggedIn() ? renderProfile() : loginCard()
}
function renderProfile() {
const card = CardService.newCardBuilder()
// build the card as wished
// ...
const logoutAction = CardService.newCardAction()
.setText('Log out')
.setOnClickAction(CardService.newAction().setFunctionName('logoutUser'))
card.addCardAction(logoutAction)
return card.build()
}
function logoutUser() {
// your logout logic
// ...
return CardService.newActionResponseBuilder()
.setNavigation(CardService.newNavigation().updateCard(sidebarTrigger()))
.build()
}