パイプライン

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

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

Pipelineコンポーネントを使ってJavaScriptのクライアントサイドパイプラインとプロセッサを設定しましょう。SPEAKはあなたの仕様に従ってプロセッサを初期化し実行します。

クライアントサイドのパイプラインを使って、Sitecoreのコアコードを修正せずに処理を追加できます。

パイプラインとは、SPEAKが特定の順序で実行する1つ以上のステップの集合です。各ステップは同じコンテキストを共有します。各ステップはコンテキストを変更し、すべてのステップが完了するかパイプラインが中止されるまで次のステップにパスできます。各ステップはクライアント側とサーバー側のロジックの両方を含む場合もあれば、クライアント側のみのロジックを含めることができます。

性質

名称

概要

ロードモード

SPEAKがどのようにパイプラインを読み込むかを指定します:

  • 即時
    。 パイプラインコンポーネントの 初期化メソッドですべてのプロセッサファイルを読み込みます。
  • インライン
    、インラインスクリプトを用います。
  • WhenRun: SPEAKはパイプラインを実行する際にプロセッサファイルを読み込みます。

パイプラインArgs

パイプラインのコンテキストを指定してください。

パイプラインアイテムID

パイプラインを設定するために 使用する項目の IDを指定します。

ターゲットコントロールとトリガー

これら2つのプロパティを使って、ページ上のコンポーネントによってトリガーされたイベントに基づいてパイプラインを実行します。

例えば、TargetControlを Button1 、Triggerを click指定します。SPEAK IDが Button1 のボタンをクリックするとパイプラインを実行します。

パイプライン構成

パイプラインコンポーネントの設定は以下の通りです:

  • パイプラインのアイテムテンプレートに基づいて設定アイテムを作成し、パイプラインコンポーネントのPipelineItemIdプロパティをこのパイプラインアイテムに指し示します。パイプラインの名前を指定するだけで十分です。
  • 必要な各プロセッサに対して、 PipelineProcessor のアイテムテンプレートを基に、 そのPipeline アイテムの子項目としてアイテムを作成します。コンテンツツリー内のこれらのアイテムの順序は、SPEAKがプロセッサを実行する順序です。
  • 各 PipelineProcessor 項目に対して、プロセッサのロジックを含むJavaScriptファイルを作成します。 PipelineProcessor 項目のProcessorFile欄に対応するJavaScriptファイルへのパスを入力し、ProcessorName欄にプロセッサ名を入力します。

JavaScriptプロセッサ

プロセッサのロジックを実装するJavaScriptファイルは常に「実行」メソッドを持つJavaScriptオブジェクトを返す必要があります。例えば:

define("sitecore", function(Sitecore) { return { priority: 1, execute: function(context) { //my code } }define("sitecore", function (Sitecore) { return { priority: 1, execute: function (context) { //my code } }

実行メソッドに渡されたコンテキストオブジェクトにtrueを割り当てることでパイプラインを中止できます。

パイプラインの利用

パイプラインのロードには時間がかかることがありますSPEAK。したがって、SPEAKは聞くことができるイベントを提供し、このイベントがパイプラインの準備完了を知らせます。 pipelinereadyイベントは次のように使います:

this.MyPipeline.on("pipelineready", function(pipeline) { var context = { firstName: "John" }; pipeline.execute(context); })this.MyPipeline.on("pipelineready", function (pipeline) { var context = { firstName: "John" }; pipeline.execute( context );})

この記事を改善するための提案がある場合は、 お知らせください!