Google apps script 将CardService与HtmlService一起使用
谷歌插件已经转向使用CardService小部件。我正在尝试创建一个下拉菜单,但ListBox类已被弃用。这些文档将我转发到HTML服务,但是没有任何文档说明如何在CardServices的上下文中使用它们。这是我的密码: GetContextualAddOn.gs 上面显示的doGet方法正在尝试访问我创建的dropdown.html文件:Google apps script 将CardService与HtmlService一起使用,google-apps-script,gmail-addons,gsuite-addons,Google Apps Script,Gmail Addons,Gsuite Addons,谷歌插件已经转向使用CardService小部件。我正在尝试创建一个下拉菜单,但ListBox类已被弃用。这些文档将我转发到HTML服务,但是没有任何文档说明如何在CardServices的上下文中使用它们。这是我的密码: GetContextualAddOn.gs 上面显示的doGet方法正在尝试访问我创建的dropdown.html文件: **dropdown.html** <!DOCTYPE html> <html> <head> <b
**dropdown.html**
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<p>test</p>
</body>
</html>
如何将HTML集成到当前的card.build中?我是否应该换一种方式来处理它,如果是这样的话,有人能提供一个代码示例吗?CardService服务只能与Gmail附加组件一起使用。它们在谷歌文档加载项或使用应用程序脚本构建的web应用程序中不可用。在我看来,你还不能在Gmail加载项中使用自定义HTML。不过,您可以使用HTML服务在Google文档/工作表附加组件中使用它们 在Gmail插件中,您可以使用卡服务中的正确选择输入创建下拉字段。 官方文件如下: 将选择输入类型用作CardService.SelectionInputType.DROPDOWN 下面是一个代码示例,可以帮助您开始:
var card = CardService.newCardBuilder();
card.setHeader(CardService.newCardHeader().setTitle('Dropdown Sample Card'));
var dropdownSection = CardService.newCardSection();
var dropdown = CardService.newSelectionInput()
.setType(CardService.SelectionInputType.DROPDOWN)
.setTitle("A Dropdown. Only a single selection is allowed.")
.setFieldName("dropdown_field")
.addItem("option one title", "option_one_value", true)
.addItem("option two title", "option_two_value", false)
.addItem("option three title", "option_three_value", false);
dropdownSection.addWidget(dropdown);
card.addSection(dropdownSection);
return [card.build()];
根据Gmail插件的设计,定制HTML不会出现在Gmail插件中。是的,他们在官方文档中指定,目前您只能使用此服务构建Gmail插件。这仍然有效吗?@JobinJoseph是的这回答了你的问题吗?
var card = CardService.newCardBuilder();
card.setHeader(CardService.newCardHeader().setTitle('Dropdown Sample Card'));
var dropdownSection = CardService.newCardSection();
var dropdown = CardService.newSelectionInput()
.setType(CardService.SelectionInputType.DROPDOWN)
.setTitle("A Dropdown. Only a single selection is allowed.")
.setFieldName("dropdown_field")
.addItem("option one title", "option_one_value", true)
.addItem("option two title", "option_two_value", false)
.addItem("option three title", "option_three_value", false);
dropdownSection.addWidget(dropdown);
card.addSection(dropdownSection);
return [card.build()];