ScriptLoader : Client

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 1 minute de lecture
  • L’API ScriptLoader fournit des méthodes pour charger les scripts de manière asynchrone.

    Vous pouvez utiliser cette API dans les scripts côté client pour une interface utilisateur de plateforme/de bureau à l’aide des API ListV2 et ListV3 . Il n’est pas disponible pour Portail de services, Mobile ou Espace de travail d'agent.

    Vous accédez aux méthodes ScriptLoader à l’aide de l’objet global ScriptLoader.

    ScriptLoader : getScripts(Array, scripts, rappel de fonction)

    Charge les scripts de manière asynchrone.

    Tableau 1. Paramètres
    Nom Type Description
    scripts Tableau Tableau de scripts à charger.
    rappel Fonction Fonction à appeler lorsque les scripts ont été chargés. La fonction de rappel ne doit pas avoir d’arguments.
    Tableau 2. Renvoie
    Type Description
    nul
    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(String filePath, rappel de fonction)

    Obtient des scripts de manière asynchrone.

    Tableau 3. Paramètres
    Nom Type Description
    chemin d’accès au fichier Chaîne Chemin d’accès, y compris le nom du fichier, qui contient un ou plusieurs scripts.
    rappel Fonction Fonction à appeler après le chargement des scripts. Cette fonction de rappel ne doit pas avoir d’arguments.
    Tableau 4. Renvoie
    Type Description
    nul

    Cet exemple montre comment charger un script utilitaire, puis exécuter la fonction 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);
    }