Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Slate에서 Foundry 함수 사용하기

Platform의 Foundry Functions 패널은 Functions 저장소에 작성한 업무 로직을 Slate에서 호출합니다. Slate가 화면을 담당하고 Foundry 함수가 서버 측 로직을, 온톨로지가 객체 데이터를 제공하는 구성입니다. Slate 안에서만 사용하는 JavaScript 함수와 구분합니다.

함수 연결

먼저 Functions 저장소에서 함수를 만들어야 합니다. 이후 Foundry Functions 패널에서 다음을 설정합니다.

  1. 자신에게 접근 권한이 있는 함수를 선택합니다.
  2. 사용할 버전을 선택합니다. 버전 표기의 예는 0.0.5입니다.
  3. 함수가 입력을 받는다면 정의된 자료형에 맞는 값을 전달합니다. Object set 입력은 Slate에서 정의한 객체 집합을 Handlebars로 전달하여 해석할 수 있습니다.
  4. 결과는 {{ff_foundry_function1}}처럼 해당 연결 이름으로 참조합니다.

함수 작성의 준비는 Foundry 함수를 따릅니다.

로직을 나누는 두 방식

방식구성
Thin Functions함수는 온톨로지 API의 데이터 접근을 주로 담당합니다. 산점도 Radius에 맞게 값을 조정하는 등 추가 가공은 Slate JavaScript 함수에서 수행합니다.
Thick Functions업무 로직과 표시용 데이터 가공까지 Foundry 함수에 둡니다. Slate에는 화면 배치, 위젯 구성과 구체적인 서식 처리를 남깁니다.

복잡한 앱의 로직을 Functions 저장소에 두면 자료형으로 입력과 출력을 검사하고 프런트엔드와 별도로 버전 및 협업을 관리할 수 있습니다. 특정 Slate 화면에 묶이지 않은 로직은 다른 앱에서도 재사용할 수 있습니다.

입력과 출력 자료형

표준 자료형, 온톨로지에서 생성한 자료형과 사용자 정의 자료형은 함수 입출력 자료형의 계약을 따릅니다.

Thick Functions 구성에서는 Struct나 사용자 정의 자료형으로 차트 또는 HTML 위젯에 필요한 형태를 반환할 수 있습니다. 함수의 입출력 정의에 맞춰 Slate 위젯이 사용할 필드를 연결합니다.