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

新しいオブジェクトに一意の ID を生成する

オブジェクトを作成するオントロジー編集関数を記述する際に、新しく作成するオブジェクトに一意の ID を生成したい場合があります。

TypeScript v2

TypeScript v2 には、組み込みの UUID ジェネレーターもプラットフォーム固有の UUID ジェネレーターもありません。npm の uuid パッケージ ↗ など、標準的な UUID ライブラリを使用します。

パッケージをインストールする

リポジトリの依存関係に uuid パッケージを追加します。

Copied!
1 2 npm install uuid npm install --save-dev @types/uuid

コード内でパッケージを使用する

Copied!
1 2 3 4 5 6 import { v4 as uuidv4 } from 'uuid'; export default function createFlightScenario(): void { const uniqueId = uuidv4(); // 新しいオブジェクトの主キーとして uniqueId を使用します }

TypeScript v1

以下のドキュメントは TypeScript v1 関数に固有のものです。オントロジー SDK のサポートやリソースリクエストの設定など、より充実した機能を利用するには、TypeScript v2 への移行を推奨します。

TypeScript v1 関数では、@foundry/functions-utils パッケージを使用して、グローバルに一意の識別子を生成します。

パッケージをインポートする

@foundry/functions-utils パッケージはデフォルトでインストールされていますが、package.json ファイルにパッケージがない場合は、次の操作を行います。

  • "dependencies" セクションに "@foundry/functions-utils": "0.1.0" を追加します。

依存関係の追加に関するドキュメントで説明されているとおり、新しいパッケージをオートコンプリートで利用できるようにするため、必ず Code Assist を再起動してください。

コード内でパッケージを使用する

一意の ID を生成するには、@foundry/functions-utils パッケージの Uuid.random() ユーティリティ関数を使用できます。以下のコード例は、オントロジー編集関数の例で random 関数を使用する方法を示しています。

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 import { OntologyEditFunction, Timestamp } from "@foundry/functions-api"; import { Objects } from "@foundry/ontology-api"; import { Uuid } from "@foundry/functions-utils"; export class ExampleEditFunctions { @Edits(FlightScenario) @OntologyEditFunction() public createFlightScenario(): void { const scenario = Objects.create().flightScenarios(Uuid.random()); scenario.scenarioName = "New scenario"; scenario.creationTime = Timestamp.now(); } }