オントロジーファンクション基礎的なTypeScriptnpm の依存関係を追加する

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

npm の依存関係を追加する

Functions のリポジトリでは、Foundry のオントロジーに基づくコードの生成や、コード内の Functions の探索など、依存関係の管理に npm を使用しています。npm を使用してリポジトリに外部依存関係をインストールすることができ、数値や日付の操作、統計計算の実行、XML のようなデータ形式の操作などの目的に標準パッケージを使用することができます。

ただし、Functions のランタイムは純粋な JavaScript ライブラリのみをサポートしており、NodeJS のランタイムに依存しシステムコールを行うパッケージはサポートされていません。

公開されている npm レジストリからの依存関係の取得を有効にする

デフォルトでは、Functions のリポジトリは公開されている npm レジストリからパッケージを取得しません。

リポジトリがまだ公開されている npm レジストリから依存関係を取得していない場合、Code Repositories で package.json ファイルを開くと、それを有効にするためのバナーが表示されます。

Code Repositories で外部の npm を有効にする。

Code Repositories で依存関係を追加する

Code Repositories の Libraries サイドバーを使用して、Functions のリポジトリにパッケージを追加することができます。希望のパッケージを検索し、結果を選択して最新のバージョンなどの詳細を表示します。結果には Foundry と https://npmjs.com のパッケージが含まれます。

Code Repositories サイドバーからライブラリを追加する。

パッケージを dependenciesdevDependencies のどちらに追加するかを選択します。Add and install library を選択すると、パッケージがリポジトリに追加されます。

ライブラリを追加する前に、ライブラリ依存関係の変更を確認する。

パッケージの元となるリポジトリがまだバッキングリポジトリとして設定されていない場合、追加のリソースをインポートするようにダイアログが表示されます。Add and install library ボタンは、パッケージとその依存関係を自動的に Functions のリポジトリにインポートし、package.jsonpackage-lock.json を更新します。

インストールタスクの実行が完了すると、パッケージはリポジトリ内で使用可能になります。

typescript-functions テンプレートのバージョンが 0.520.0 未満の場合、タスクランナーを通じてのインストールは無効になります。この場合、更新された package.json ファイルをコミットし、チェックが成功することを確認した後、新しいパッケージを利用可能にするために Code Assist を再起動します。

手動で依存関係を追加する

Code Repositories の package.json ファイルを修正することで、手動でパッケージを追加することができます。これは特定のパッケージバージョンをインストールする必要がある場合に便利です。package.json を開き、https://npmjs.com から選択した適切なバージョンを持つ依存関係を追加し、Commit を選択します。チェックが成功することを確認した後、新しいパッケージを利用可能にするために Code Assist を再起動します。

ステータスバーにマウスを置き、ステータス記号を選択して Code Assist を再起動します。

以下は、リポジトリの package.json ファイルに手動で d3-array パッケージを追加する例です:

Copied!
1 2 3 4 5 6 7 8 "dependencies": { // これはプロジェクトが動作するために必要な依存関係を示します。 ... "d3-array": "^2.3.1" // "d3-array"はJavaScriptの配列操作をサポートするライブラリで、バージョン2.3.1以上が必要です。 }, "devDependencies": { // これは開発中のみ必要な依存関係を示します。 ... "@types/d3-array": "^2.0.0" // "@types/d3-array"は"d3-array"のTypeScript定義を提供するライブラリで、バージョン2.0.0以上が必要です。 }