AI翻訳通知
このドキュメントはAIによって翻訳されました。正確な情報については英語版をご参照ください。
ctx.requireAsync()
URL を指定して UMD/AMD またはグローバルにマウントされるスクリプトを非同期で読み込みます。CSS の読み込みも可能です。ECharts、Chart.js、FullCalendar(UMD 版)、jQuery プラグインなどの UMD/AMD ライブラリを RunJS で使用する場合に適しています。ライブラリが ESM バージョンも提供している場合は、ctx.importAsync() を優先して使用してください。
適用シーン
RunJS 内で UMD/AMD/グローバルスクリプト、または CSS をオンデマンドで読み込む必要があるすべてのシーンで使用できます。例:JSBlock、JSField、JSItem、JSColumn、ワークフロー、JSAction など。典型的な用途:ECharts、Chart.js、FullCalendar (UMD)、dayjs (UMD)、jQuery プラグインなど。
型定義
パラメータ
戻り値
- 読み込まれたライブラリのオブジェクト(UMD/AMD コールバックの最初のモジュール値)。多くの UMD ライブラリは
windowにアタッチされるため(例:window.echarts)、戻り値がundefinedになる場合があります。その場合は、ライブラリのドキュメントに従ってグローバル変数にアクセスしてください。 .cssが渡された場合は、loadCSSの結果を返します。
URL 形式の説明
- 短縮パス: 例:
echarts@5/dist/echarts.min.js。デフォルトの ESM CDN (esm.sh) では、https://esm.sh/echarts@5/dist/echarts.min.js?rawがリクエストされます。?rawは、ESM ラッパーではなくオリジナルの UMD ファイルを取得するために使用されます。 - フル URL:
https://cdn.jsdelivr.net/npm/dayjs@1/dayjs.min.jsのように、任意の CDN アドレスを直接記述できます。 - CSS:
.cssで終わる URL を渡すと、ページに読み込まれ、注入されます。
ctx.importAsync() との違い
- ctx.requireAsync(): UMD/AMD/グローバルスクリプトを読み込みます。ECharts、Chart.js、FullCalendar (UMD)、jQuery プラグインなどに適しています。読み込み後、ライブラリは
windowにアタッチされることが多く、戻り値はライブラリのオブジェクトまたはundefinedになります。 - ctx.importAsync(): ESM モジュールを読み込み、モジュールの名前空間を返します。ライブラリが ESM を提供している場合は、より優れたモジュールセマンティクスと Tree-shaking を利用できる
ctx.importAsync()を優先してください。
例
基本的な使い方
ECharts チャート
Chart.js 棒グラフ
dayjs(UMD)
注意事項
- 戻り値の形式: UMD ライブラリのエクスポート方法は様々です。戻り値がライブラリのオブジェクトである場合もあれば、
undefinedである場合もあります。undefinedの場合は、ライブラリのドキュメントに従ってwindowからアクセスしてください。 - ネットワーク依存: CDN へのアクセスが必要です。イントラネット環境では、ESM_CDN_BASE_URL を使用して自前で構築したサービスを指すように設定できます。
- importAsync との選択: ライブラリが ESM と UMD の両方を提供している場合は、
ctx.importAsync()を優先してください。
関連情報
- ctx.importAsync() - ESM モジュールの読み込み。Vue、dayjs (ESM) などに適しています。
- ctx.render() - チャートなどをコンテナにレンダリングします。
- ctx.libs - React、antd、dayjs などが組み込まれており、非同期読み込みは不要です。

