Gmail附加错误:SubmitFormResponseMarkup不允许使用值:card_navigations

问题描述 投票:0回答:1

我有函数logoutAction(e),当使用setOnClickAction()并在Card中的TextButton上设置此函数时-可以正常工作。

但是当我使用来自“ universalActions”的相同功能时-我收到此错误:“ SubmitFormResponseMarkup不允许使用value:card_navigations”。

功能注销动作:

function logoutAction(e) {
    revokeToken();

    var service = getOAuthService();
    service.reset();

    userProperties.setProperty('loggedIn', 'false');

    // Create a Navigation object to push the card onto the stack.
    // Return a built ActionResponse that uses the navigation object.
    var nav = CardService.newNavigation().pushCard(loginFormBuild(e));
    return CardService.newActionResponseBuilder().setNavigation(nav).build();
}

在这里工作正常:

   var logoutButton = CardService.newTextButton()
        .setText("Logout")
        .setOnClickAction(CardService.newAction().setFunctionName("logoutAction"));
    content.addWidget(logoutButton);

但是来自清单中的“ universalActions”-它不起作用:

    "universalActions": [{
    "text": "Logout",
    "runFunction": "logoutAction"
  }]

有什么想法吗?

google-apps-script google-apps gmail-addons google-apps-script-addon
1个回答
0
投票

我们不能对简单动作和通用动作使用相同的功能。因为简单操作必须返回ActionResponse,但是通用操作必须返回UniversalActionResponse

因此,我们需要使用CardService.newActionResponseBuilder()而不是CardService.newUniversalActionResponseBuilder() >>

© www.soinside.com 2019 - 2024. All rights reserved.