ScriptLoader - 클라이언트

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기2분
  • 스크립트를 비동기적으로 로드하는 기능을 제공합니다.

    ListV2 및 ListV3 API를 사용하여 플랫폼/데스크톱 UI에 대한 클라이언트 측 스크립트에서 ScriptLoader API를 사용할 수 있습니다. Service Portal, Mobile 또는 Agent Workspace에는 사용할 수 없습니다.

    전역 개체 ScriptLoader를 사용하여 ScriptLoader 메서드에 액세스합니다.

    ScriptLoader - getScripts(배열 스크립트, 함수 콜백)

    스크립트를 비동기적으로 로드합니다.

    표 1. 매개변수
    이름 유형 설명
    스크립트 배열 로드할 스크립트의 배열입니다.
    콜백 함수 스크립트가 로드되었을 때 호출할 함수입니다. 콜백 함수에는 인수가 없어야 합니다.
    표 2. 반환
    유형 설명
    void
    var scriptFiles=[
    'scripts/classes/providers/ProviderUI.js',
    'scripts/classes/providers/wf_provider_client_script.js'
    ];
    
    ScriptLoader.getScripts(scriptFiles, function() {
      ProviderUI.setFields(['input_transform']);
      ProviderUI.apply();
      ProviderUI.removeDisabledAttribute("sys_readonly.wf_element_activity.access");
    }

    ScriptLoader - getScripts(문자열 filePath, 함수 콜백)

    스크립트를 비동기적으로 가져옵니다.

    표 3. 매개변수
    이름 유형 설명
    Filepath 문자열 하나 이상의 스크립트가 들어 있는 경로(파일 이름 포함)입니다.
    콜백 함수 스크립트가 로드된 후 호출할 함수입니다. 이 콜백 함수에는 인수가 없어야 합니다.
    표 4. 반환
    유형 설명
    void

    이 예제에서는 유틸리티 스크립트를 로드한 다음 getDepartment() 함수를 실행하는 방법을 보여 줍니다.

    // Client script to load a utility script and run the getDepartment callback function
    ScriptLoader.getScripts('sn_ui_script_util.Utilities.jsdbx', getDepartment);
    
    function getDepartment() {
      var req = sn_ui_script_util.Utilities.rest('json');
      req.addParam("sysparm_query", "sys_id=" + newValue);
      req.addParam("sysparm_fields", "department");
      req.addParam("sysparm_display_value", true);
      req.success(updateNotes);
      req.get("/api/now/table/sys_user");
    }
    
    function updateNotes(data) {
      g_form.setValue("work_notes", data.result[0].department.display_value);
    }