이 내용은 learn.palantir.com ↗에서도 확인할 수 있으며 접근성 목적으로 여기에 제공됩니다.
Workshop 모듈 사용자에게 대기 중인 알림 중 해결되지 않은 알림의 비율을 강조하는 측정치 카드를 제공하려고 합니다. Workshop은 숫자 집계를 원래 계산하고 표시할 수 있지만, 때때로 Workshop 프론트엔드를 통해 사용할 수 없는 비즈니스 로직을 사용하여 측정치를 계산해야 할 수도 있습니다.
Function을 사용하여 필요한 수치를 제공하는 Workshop의 기능을 확장할 수 있습니다. 이 작업에서는 MyFunctions
클래스의 메소드로 사용자 지정 Function을 추가하게 됩니다.
리포지토리의 ../src/index.ts
파일을 엽니다.
MyFunctions
클래스 내에서 새로운 함수를 위한 공간을 만들어야 합니다. 8행의 닫힌 중괄호 뒤에 커서를 두고 엔터키를 두 번 누릅니다.
다음 코드 블록을 삽입하십시오. 단, @Function()
데코레이터와 public...
줄이 위의 함수와 정렬되도록 주의하세요.
jmeierPercentUnresolved
를 알아볼 수 있는 전용 이름으로 바꾸고 (예를 들어, jmeier
을 본인의 이름으로 바꾸십시오) JmeierFlightAlert
를 본인의 API 이름으로 바꾸십시오.@Function()
// "alerts"라는 별칭을 가진 항공편 알림 오브젝트 배열을 입력 받고
// Double을 반환합니다
public jmeierPercentUnresolved(alerts: JmeierFlightAlert[]): Double {
// 배열에 실제 오브젝트가 포함되어 있는지 확인하고, 그렇지 않으면 "0"을 반환합니다
if (alerts.length === 0) {
return 0;
}
// 배열을 순환하면서 해결되지 않은 상태의 알림을 발견할 때마다
// 변수("numberUnresolved")를 1씩 증가시킵니다
let numberUnresolved = 0;
for (const alert of alerts) {
if (alert.status != "Resolved") {
numberUnresolved++;
}
}
// 원본 배열의 길이로 나눈 해결되지 않은 알림 수를 반환합니다
return numberUnresolved/alerts.length;
}
코드 지원이 실행 중이면 Double의 출력 유형이 빨간색으로 밑줄 친 것을 볼 수 있습니다. 이는 코드에 문제가 있음을 나타냅니다. 요약하면, 리포지토리는 가져오지 않은 유형을 발견했습니다.
Double
을 추가합니다: import { Function, Integer, Double } from "@foundry/functions-api";