1. JavaScript SDK

データソースクライアント

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

このSDKは、データソースに対してCRUD操作 (オプションリストとも呼ばれる) を実行するためのDatasource clientを提供します。

メモ

次のコード例のclient変数は、ContentHubClientインスタンスを参照します。JavaScript SDKを使用する場合、変数名は自由に選択できますが、ドキュメントではインスタンス化時にclientとも呼ばれます。

データソースを取得する

データソースは、名前で取得できます。

import { IOptionList } from "@sitecore/sc-contenthub-webclient-sdk/dist/contracts/base/option-lists/option-list";

var result: IOptionList = await client.optionLists.getAsync("name");

これはIOptionListオブジェクトを返します。ただし、次のいずれかの方法で適切な種類のデータソースにダウンキャストする必要があります。

手記

IOptionListTypeプロパティを使用して、実行時に正しいデータソースの種類を識別できます。

import { IHierarchicalOptionList } from "@sitecore/sc-contenthub-webclient-sdk/dist/contracts/base/option-lists/hierarchical-option-list";

var hierachicalDataSource : IHierarchicalOptionList = await client.optionLists.getAsync("name") as IHierarchicalOptionList;
import { IFlatOptionList } from "@sitecore/sc-contenthub-webclient-sdk/dist/contracts/base/option-lists/flat-option-list";

var flatDataSource: IFlatOptionList = await client.optionLists.getAsync("name") as IFlatOptionList;

データソースの作成

階層データソースを作成するには、まずファクトリでインスタンスを作成する必要があります。その後、クライアントを使用してインスタンスを保存できます。データソースは、すべてのタイプのメディアがより多くのサブ値を持つことができるメディアタイプに使用できます。

この例では、ビデオ メディアの種類のサブタイプとして 'mp4' が追加されています。

import HierarchicalOptionListValue from "@sitecore/sc-contenthub-webclient-sdk/dist/contracts/base/option-lists/hierarchical-options-list-value";

var dataSource = await client.optionListFactory.createHierarchicalOptionList("MediaType");
dataSource.labels["en-US"] = "Media type";

var video = new HierarchicalOptionListValue(
  "Video",
  { "en-US": "Video" }
);

dataSource.values.push(video);

var mp4 = new HierarchicalOptionListValue(
  "MP4",
  { "en-US": "mp4" }
);

dataSource.values.push(mp4);

var image = new HierarchicalOptionListValue(
  "Image",
  { "en-US" : "Image" }
);

dataSource.values.push(image);

await client.optionLists.createAsync(dataSource);

データソースの更新

次の例では、フラットcolorsデータソースがcolor redで拡張されています。

import FlatOptionListValue from "@sitecore/sc-contenthub-webclient-sdk/dist/contracts/base/option-lists/flat-option-list-value";
import { IFlatOptionList } from "@sitecore/sc-contenthub-webclient-sdk/dist/contracts/base/option-lists/flat-option-list";

var dataSource = await client.optionLists.getAsync("colors") as IFlatOptionList;

var red = new FlatOptionListValue("red");
red.labels["en-US"] = "red";

dataSource.values.push(red);

await client.optionLists.updateAsync(dataSource);

データソースの削除

次の例では、Nameデータソースが削除されます。

await client.optionLists.deleteAsync("name");
この記事を改善するための提案がある場合は、 お知らせください!