spUtil - 클라이언트
spUtil API는 위젯 클라이언트 스크립트에서 서비스 포털 일반적인 기능을 수행하는 유틸리티 메서드를 제공합니다.
- 알림 오류 메시지를 표시합니다. spUtil - addErrorMessage(문자열 메시지)
- 알림 정보 메시지를 표시합니다. spUtil - addInfoMessage(문자열 메시지)
- 간단한 알림 메시지를 표시합니다. spUtil - addTrivialMessage(문자열 메시지)
- 고유 식별자를 생성합니다. spUtil - createUid()
- 변수를 사용하여 문자열의 서식을 지정합니다. spUtil - format(문자열 템플릿, 개체 데이터)
- 위젯 클라이언트 스크립트에 위젯 모델을 포함합니다. spUtil - get(문자열 위젯 개체 데이터)
- API 호출에 사용할 모든 헤더를 검색합니다. spUtil - getHeaders()
- 전체 호스트 도메인을 반환합니다. spUtil - getHost()
- 기본 설정 이름을 전달하여 사용자 기본 설정 응답으로 콜백을 실행합니다. spUtil - getPreference(문자열 기본 설정, 함수 콜백)
- 현재 서비스 포털 URL 정보를 반환합니다. spUtil - getURL()
- 현재 클라이언트가 모바일 장치인지 확인합니다. spUtil - isMobile()
- 지정된 문자열 내에서 쉼표로 구분된 속성을 구문 분석합니다. spUtil - parseAttributes(문자열 속성)
- 테이블 또는 필터에 대한 업데이트를 감시하고 콜백 함수에서 값을 반환합니다. spUtil - recordWatch(개체 $scope, 문자열 테이블, 문자열 필터, 함수 콜백)
- 서버를 호출하고 현재 옵션 과 데이터를 서버 응답으로 바꿉니다. spUtil - refresh(Object $scope)
- 지정된 시간 동안 지정된 선택기를 사용하여 요소로 스크롤합니다. spUtil - scrollTo(문자열 선택기, 숫자 시간)
- 헤더 이동 경로를 업데이트합니다. spUtil - setBreadCrumb(개체 $scope, 배열 이동 경로)
- 사용자 기본 설정을 지정합니다. spUtil - setPreference(문자열 기본 설정, 문자열 값)
- 검색 페이지를 업데이트합니다. spUtil - setSearchPage(문자열 searchPage)
- 지정된 범위 내에서 서버의 데이터 개체를 업데이트합니다. spUtil - update(Object $scope)
위젯에 대한 자세한 내용은 서비스 포털 위젯을 참조하십시오.
spUtil - addErrorMessage(문자열 메시지)
알림 오류 메시지를 표시합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 메시지 | 문자열 | 표시할 오류 메시지입니다. |
| 유형 | 설명 |
|---|---|
| void |
spUtil.addErrorMessage("There has been an error processing your request")
spUtil - addInfoMessage(문자열 메시지)
알림 정보 메시지를 표시합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 메시지 | 문자열 | 표시할 메시지입니다. |
| 유형 | 설명 |
|---|---|
| void |
spUtil.addInfoMessage("Your order has been placed")
spUtil - addTrivialMessage(문자열 메시지)
간단한 알림 메시지를 표시합니다.
사소한 메시지는 잠시 후 사라집니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 메시지 | 문자열 | 표시할 메시지입니다. |
| 유형 | 설명 |
|---|---|
| void |
spUtil.addTrivialMessage("Thanks for your order")
spUtil - createUid()
고유 식별자를 생성합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 고유한 32자리 ID입니다. |
spUtil - get(문자열 위젯 개체 데이터)
위젯 클라이언트 스크립트에 위젯 모델을 포함합니다.
콜백 함수는 전체 위젯 모델을 반환합니다. 위젯에 대한 자세한 내용은 서비스 포털 위젯을 참조하십시오.
| 이름 | 유형 | 설명 |
|---|---|---|
| 위젯 ID | 문자열 | 포함할 위젯의 위젯 ID 또는 sys_id입니다. |
| 데이터 | 객체 | 옵션입니다. 위젯 모델에 전달할 매개변수의 이름/값 쌍입니다. |
| 유형 | 설명 |
|---|---|
| 객체 | 포함된 위젯의 모델입니다. |
데이터가 전달되지 않았습니다.
spUtil.get("widget-cool-clock").then(function(response) {
c.coolClock = response;
});
데이터가 전달되면.
spUtil.get('pps-list-modal', {title: c.data.editAllocations,
table: 'resource_allocation',
queryString: 'GROUPBYuser^resource_plan=' + c.data.sysId,
view: 'resource_portal_allocations' }).then(function(response) {
var formModal = response;
c.allocationListModal = response;
});
spUtil - getHeaders()
API 호출에 사용할 모든 헤더를 검색합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 객체 | API 호출에 사용할 모든 헤더입니다. |
spUtil - getHost()
전체 호스트 도메인을 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 전체 호스트 도메인(예: hi.servicenow.com |
spUtil - getPreference(문자열 기본 설정, 함수 콜백)
기본 설정 이름을 전달하여 사용자 기본 설정 응답으로 콜백을 실행합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 기본 설정 | 문자열 | 기본 설정의 이름입니다. |
| 콜백 | 기능 | 콜백 함수를 정의합니다. |
| 유형 | 설명 |
|---|---|
| void |
spUtil - getURL()
현재 서비스 포털 URL 정보를 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 현재 서비스 포털 URL입니다. |
spUtil - format(문자열 템플릿, 개체 데이터)
변수를 포함하는 문자열의 형식을 지정합니다.
이 메서드를 문자열 연결의 대안으로 사용합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 템플릿 | 문자열 | 변수 대체에 대한 값을 포함하는 문자열 템플릿입니다. |
| 데이터 | 객체 | 템플릿 문자열에 정의된 변수의 값을 포함하는 객체입니다. |
| 유형 | 설명 |
|---|---|
| 문자열 | 변수 명명법 대신 변수 값을 포함하는 문자열입니다. |
spUtil.format('An error ocurred: {error} when loading {widget}', {error: '404', widget: 'sp-widget'})
출력:
'An error occurred: 404 when loading sp-widget'
spUtil - isMobile()
현재 클라이언트가 모바일 장치인지 확인합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 부울 | 현재 클라이언트가 모바일 장치인지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
|
spUtil - parseAttributes(문자열 속성)
지정된 문자열 내에서 쉼표로 구분된 속성을 구문 분석합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 속성 | 문자열 | 딕셔너리 기록의 속성 필드처럼 쉼표로 구분된 속성을 포함하는 문자열입니다. |
| 유형 | 설명 |
|---|---|
| 배열 | 구문 분석된 속성을 포함하는 객체의 배열입니다. |
function getRefQualElements() {
var refQualElements = [];
if (field && field.attributes && field.attributes.indexOf('ref_qual_elements') > -1) {
var attributes = spUtil.parseAttributes(field.attributes);
refQualElements = attributes['ref_qual_elements'].split(';');
}
return refQualElements;
}
spUtil - recordWatch(개체 $scope, 문자열 테이블, 문자열 필터, 함수 콜백)
테이블 또는 필터에 대한 업데이트를 감시하고 콜백 함수에서 값을 반환합니다.
위젯 개발자가 테이블 업데이트에 실시간으로 응답할 수 있습니다. 예를 들어, recordWatch()를 사용하면 단순 목록 위젯이 데이터 테이블의 변경 사항을 수신할 수 있습니다. 기록이 추가, 제거 또는 업데이트되면 위젯이 자동으로 업데이트됩니다.
$scope 인수를 recordWatch() 함수에 전달할 때 클라이언트 스크립트 함수의 매개변수에 $scope 삽입합니다.| 이름 | 유형 | 설명 |
|---|---|---|
| $scope | 객체 | 콜백 함수에 의해 업데이트된 데이터 객체의 범위입니다. |
| 테이블 | 문자열 | 감시된 테이블입니다. |
| 필터 | 문자열 | 감시할 필드를 필터링합니다. |
| 콜백 | 기능 | 옵션입니다. 콜백 함수를 정의하는 매개변수입니다. |
| 유형 | 설명 |
|---|---|
| 약속 | 콜백 함수의 반환 값입니다. |
//A simple recordWatch function.
spUtil.recordWatch($scope, "live_profile", "sys_id=" + liveProfileId);
//In a widget client script
function(spUtil, $scope) {
/* widget controller */
var c =this;
// Registers a listener on the incident table with the filter active=true,
// meaning that whenever something changes on that table with that filter,
// the callback function is executed.
// The callback function takes a single parameter 'response', which contains
// the property 'data'. The 'data' property contains information about the changed record.
spUtil.recordWatch($scope, "incident", "active=true", function(response) {
// Returns the data inserted or updated on the table
console.log(response.data);
});
}
spUtil - refresh(Object $scope)
서버를 호출하고 현재 옵션 과 데이터를 서버 응답으로 바꿉니다.
spUtil.refresh()를 호출하는 것은 server.refresh()를 호출하는 것과 비슷합니다. 그러나 spUtil.refresh()를 호출할 때 $scope 개체를 정의할 수 있습니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| $scope | 객체 | 업데이트에 대해 정의된 범위입니다. |
| 유형 | 설명 |
|---|---|
| 객체 | 업데이트된 옵션 및 데이터 개체. |
spUtil - scrollTo(문자열 선택기, 숫자 시간)
지정된 기간 동안 지정된 선택기가 있는 요소로 스크롤합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 선택기 | 문자열 | 스크롤할 선택기입니다. |
| 시간 | 번호 | 지정된 선택기로 스크롤하는 데 걸린 시간입니다. 단위: 밀리초 |
| 유형 | 설명 |
|---|---|
| void |
spUtil - setBreadCrumb(개체 $scope, 배열 이동 경로)
헤더 이동 경로를 업데이트합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| $scope | 객체 | 테이블에 대해 정의된 범위입니다. |
| 이동 경로 | 배열 | 이동 경로 필터를 만드는 데 사용되는 조건입니다. |
| 유형 | 설명 |
|---|---|
| void |
spUtil - setPreference(문자열 기본 설정, 문자열 값)
사용자 기본 설정을 지정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 현 | 문자열 | 기본 설정 이름 |
| 값 | 문자열 | 기본 설정 값 |
| 유형 | 설명 |
|---|---|
| void |
spUtil - setSearchPage(문자열 searchPage)
검색 페이지를 업데이트합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 검색 페이지 | 문자열 | 검색 페이지의 이름입니다. |
| 유형 | 설명 |
|---|---|
| void |
spUtil - update(Object $scope)
지정된 범위 내에서 서버의 데이터 개체를 업데이트합니다.
이 메서드는 server.update()와 유사하지만 전달할 범위를 정의하는 $scope 매개 변수를 포함합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| $scope | 객체 | 업데이트에 대해 정의된 범위입니다. |
| 유형 | 설명 |
|---|---|
| 객체 | 업데이트된 데이터 객체입니다. |
다음 예제에는 상태 필드의 변경 내용을 감시하고 필터를 사용하여 모든 활성 P1을 감시하고 콜백 함수가 데이터를 새로 고칠지 여부를 결정하도록 하는 P1 위젯이 포함되어 있습니다. 이 속성에는 업데이트된 필드의 배열이 data.changes 포함됩니다. 필드의 상태가 변경되면 위젯에서 데이터가 업데이트됩니다.
var q = "priority=1^active=true^EQ";
spUtil.recordWatch($scope, "incident", q, function(event, data) {
if (data.changes.includes("state")) { // only update if state was updated.
spUtil.update($scope);
}
});