UI 요소 내에서 상호작용을 사용 설정하는 작업입니다. 이 작업은 클라이언트에서 직접 실행되지 않고 매개변수(선택사항)가 있는 Apps Script 콜백 함수를 호출합니다.
Google Workspace 부가기능 및 Google Chat 앱에서 사용할 수 있습니다.
const image = CardService.newImage().setOnClickAction( CardService.newAction().setFunctionName('handleImageClick').setParameters({ imageSrc: 'carImage' }), );
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
add | Action | 유효한 제출에 이 작업에 필요한 위젯의 이름을 추가합니다. |
set | Action | 이 작업에 모든 위젯의 입력이 필요한지 나타냅니다. |
set | Action | 호출할 콜백 함수의 이름을 설정합니다. |
set | Action | 사용자와의 상호작용을 설정합니다. 대화상자를 열 때만 필요합니다. |
set | Action | 작업이 진행되는 동안 표시되는 로드 표시기를 설정합니다. |
set | Action | 맞춤 매개변수를 콜백 함수에 전달할 수 있습니다. |
set | Action | 작업 응답이 양식의 Card 를 업데이트한 후 양식 값이 클라이언트 값에 의해 결정되는지 아니면 서버 값에 의해 결정되는지를 나타냅니다. |
자세한 문서
add Required Widget(requiredWidget)
유효한 제출에 이 작업에 필요한 위젯의 이름을 추가합니다. 이 작업이 호출될 때 이 목록의 위젯에 값이 없으면 양식 제출이 중단됩니다.
Google Chat 앱에서만 사용할 수 있습니다. Google Workspace 부가기능에는 사용할 수 없습니다.
const textInput = CardService.newTextInput() .setFieldName('text_input_1') .setTitle('Text input title'); // Creates a footer button that requires an input from the above TextInput // Widget. const action = CardService.newAction() .setFunctionName('notificationCallback') .addRequiredWidget('text_input_1'); const fixedFooter = CardService.newFixedFooter().setPrimaryButton( CardService.newTextButton().setText('help').setOnClickAction(action), );
매개변수
이름 | 유형 | 설명 |
---|---|---|
required | String | 이 작업에 필요한 위젯의 이름입니다. |
리턴
Action
: 연결을 위한 객체입니다.
set All Widgets Are Required(allWidgetsAreRequired)
이 작업에 모든 위젯의 입력이 필요한지 나타냅니다.
Google Chat 앱에서만 사용할 수 있습니다. Google Workspace 부가기능에는 사용할 수 없습니다.
// Creates a button with an action that requires inputs from all widgets. const button = CardService.newTextButton() .setText('Create notification') .setOnClickAction( CardService.newAction().setAllWidgetsAreRequired(true));
매개변수
이름 | 유형 | 설명 |
---|---|---|
all | Boolean | 작업에 모든 위젯의 입력이 필요한지 여부입니다. 기본값은
false 입니다. |
리턴
Action
: 연결을 위한 객체입니다.
set Function Name(functionName)
호출할 콜백 함수의 이름을 설정합니다. 필수 항목입니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
function | String | 함수 이름입니다. 포함된 라이브러리(예: Library.libFunction1 )의 함수를 사용할 수 있습니다. |
리턴
Action
: 연결을 위한 객체입니다.
set Interaction(interaction)
사용자와의 상호작용을 설정합니다. 대화상자를 열 때만 필요합니다. 지정하지 않으면 앱은 평소와 같이 링크 열기 또는 함수 실행과 같은 Action
를 실행하여 응답합니다.
Google Chat 앱에서만 사용할 수 있습니다. Google Workspace 부가기능에는 사용할 수 없습니다.
const action = CardService.newAction() .setFunctionName('handleDialog') .setInteraction(CardService.Interaction.OPEN_DIALOG);
매개변수
이름 | 유형 | 설명 |
---|---|---|
interaction | Interaction | 지정할 상호작용입니다. |
리턴
Action
: 연결을 위한 객체입니다.
set Load Indicator(loadIndicator)
작업이 진행되는 동안 표시되는 로드 표시기를 설정합니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
load | Load | 표시할 지표입니다. |
리턴
Action
: 연결을 위한 객체입니다.
set Parameters(parameters)
맞춤 매개변수를 콜백 함수에 전달할 수 있습니다. 선택사항입니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
parameters | Object | 키와 값은 모두 문자열이어야 합니다. |
리턴
Action
: 연결을 위한 객체입니다.
set Persist Values(persistValues)
작업 응답이 양식의 Card
를 업데이트한 후 양식 값이 클라이언트 값에 의해 결정되는지 아니면 서버 값에 의해 결정되는지를 나타냅니다. true
로 설정하면 클라이언트 값이 서버 응답 후에도 유지됩니다. false
로 설정하면 서버 값이 양식 값을 덮어씁니다. 기본값은 false
입니다.
클라이언트 값을 유지하면 사용자가 수정한 후 양식이 예기치 않게 변경되는 상황을 방지할 수 있습니다. 예를 들어 사용자가 양식을 제출한 후 서버가 응답하기 전에 Text
를 수정하는 경우입니다. 값이 유지되면 서버 응답이 Card
를 업데이트한 후에도 사용자가 수정한 내용이 유지됩니다. 그렇지 않으면 양식 값이 사용자가 양식에 원래 제출한 값으로 돌아갑니다.
클라이언트 값을 유지하면 스크립트가 양식 필드를 지우거나 양식 값을 재정의하는 기능을 방해할 수 있으므로 이러한 유형의 기능에는 지속성을 사용 설정하지 마세요. 지속성이 없으면 서버가 응답하기 전에 UI가 잠기고 사용자가 수정할 수 없으므로 이벤트에 Load
를 사용하는 것이 좋습니다. 또는 Load
를 사용하고 양식의 모든 요소에 onChange 작업이 있는지 확인할 수 있습니다.
// Creates a button with an action that persists the client's values as the // on-click action. const button = CardService.newTextButton() .setText('Create notification') .setOnClickAction( CardService.newAction().setPersistValues(true).setFunctionName( 'functionName'), );
매개변수
이름 | 유형 | 설명 |
---|---|---|
persist | Boolean | 값을 유지할지 여부입니다. 기본값은 false 입니다. |
리턴
Action
: 연결을 위한 객체입니다.