ServiceNow SDK を使用してアプリケーションで JavaScript モジュールを作成して使用する

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:4分
  • JavaScript モジュールで再利用可能なコードブロックを定義して、コードベースを最適化します そして ServiceNow SDK

    始める前に

    必要なロール:admin

    このタスクについて

    JavaScript モジュールの作成に使用される構文に関する一般的な情報については、MDN Web Docs Web サイトの JavaScript モジュール ページを参照してください。 モジュールで TypeScript を使用するには、「 ServiceNow SDK で JavaScript モジュールの TypeScript を使用する」を参照してください。

    手順

    1. Visual Studio Code で、スコープ対象のアプリケーションのディレクトリを開きます。
    2. アプリケーションの src/server ディレクトリに、再利用するモジュールコードを含む JavaScript または TypeScript ファイルを作成します。
    3. オプション: グローバル Glide API をインポートして、モジュールから呼び出します。
      import { gs } from '@servicenow/glide'
    4. モジュールで、エクスポートするコードを export ステートメントで指定します。

      名前付きエクスポートまたはデフォルトのエクスポートを使用できます。名前付きエクスポートは変数、定数、関数、またはクラスにすることができますが、デフォルトのエクスポートは関数またはクラスのみにすることができます。

      次の例は、モジュール内の複数の機能 (関数と変数) の名前付きエクスポートを追加する 1 つの方法です。
      export { myFunction, myVariable };
      
    5. エクスポートされたモジュールのコードを他のモジュールまたはサーバー側スクリプトで使用します。
      ファイルステップ
      モジュール
      1. src/server ディレクトリから、JavaScript モジュールを作成するか開きます。
      2. import ステートメントを使用してモジュールコードをインポートします。
        次の例は、エクスポートされた機能をモジュールにインポートする 1 つの方法です。
        import { feature } from "path/to/module";
        
      3. このモジュールからモジュールコードを呼び出し、再利用します。
      ソースコード内のサーバー側スクリプト
      1. ソースコード (.now.ts ファイル) で、ビジネスルールなどのサーバー側スクリプトを含むアプリケーションメタデータの定義を作成するか、開きます。
      2. スクリプトプロパティで、モジュールコードをインポートして呼び出し、再利用します。
        関数をインポートするか、script タグが前に付いたインラインスクリプトを指定できます。
        • エクスポートされた関数、関数式、またはデフォルト関数をインポートします。例:
          script: FunctionExport,
        • インラインスクリプトでは、require ステートメントを使用してモジュールコードをインポートする必要があります。例:
          script: script`
              const { process } = require('./dist/modules/server/handler.js')
              process(request, response)`,

        ソースコードのサーバー側スクリプトの詳細については、「ServiceNow Fluent API リファレンス」を参照してください。

      サーバー側スクリプトレコード
      1. ビジネスルールなどのサーバー側スクリプトのレコードを開きます。
      2. require ステートメントを使用してモジュールコードをインポートします。
        次の例は、エクスポートされた機能をスクリプトにインポートする 1 つの方法です。
        const { feature } = require("path/to/module");
        
      3. このスクリプトからモジュールコードを呼び出し、再利用します。
    6. 変更内容を保存します。

    次のタスク

    JavaScript モジュールでサードパーティライブラリを使用するには、「ServiceNow SDK のアプリケーションでサードパーティのライブラリを使用する」を参照してください。

    アプリケーションをビルドし、モジュールを EcmaScript モジュール [sys_module] テーブルに追加するには、「ServiceNow SDK でアプリケーションをビルドして展開する」を参照してください。