機械翻訳について

コンポーネント・イベントの非同期処理の有効化

一部のJETコンポーネント(特に編集可能な表)では、非同期イベント処理がサポートされていますが、Visual Builderアプリケーションのイベントに対してこの動作を明示的に有効にする必要があります。 既存のイベント・リスナー構成でこの動作を有効にする場合は、既存のアクション・チェーンを再加工して非同期イベントを管理してください。

非同期イベント処理を有効にする場合のシナリオを次に示します: 編集可能な表を操作する場合、ユーザーは一度に1つの行(データ)を編集し、編集中の行の追跡にcurrentRow変数を使用します。 ユーザーが1行から次の行に移動すると、表のイベントを通じて変更が通知されます: ojBeforeRowEditおよびojBeforeRowEditEnd

これらのイベントで非同期イベント動作が使用されている場合、ユーザーは、以前に編集した行(前の行)のデータが、入力されている新しい行(次の行または新しい行)に短時間でフラッシュされることがあります。 これは、前の行が編集モードから外れてから次の行が編集モードになるまでの分割秒の遅延が原因で発生します。両方ともcurrentRow変数を使用するため、両方ともパラレルに発生します。 次の行のこの遅延は、次の行のデータにcurrentRowを移入するアクション・チェーンの完了よりも速く、UI上で編集モードになります。これにより、前の行のデータが次の行に短時間表示されます。

これらのイベントの非同期処理では、Visual Builderが約束の解決(または拒否)を待機しながら、イベントにリンクされているすべてのアクション・チェーンが完了するまで、ロード・インジケータを表示するように表に指示する約束を提供することで、この問題を解決できます。 それまでは、次の行は編集モードになりません。

注意:

非同期動作で構成された既存のイベントを変換すると、対応するアクション・チェーンが再処理されない場合に非同期動作に切り替えると、予期しない結果になる可能性があります。 非同期イベントをサポートするコンポーネント(たとえば、表コンポーネントのojBeforeRowEditおよびojBeforeRowEditEnd)のJETイベント・ドキュメントを確認して、非同期処理を有効にすることの意味を理解し、アクション・チェーン・ロジックを適切に実装できるようにすることが重要です。

非同期処理を有効にするには:

  1. イベント・リスナー・エディタを開き、「コンポーネント・イベント・リスナー」でイベントを選択します(たとえば、tableBeforeRowEdit)。
  2. イベント・リスナーの「プロパティ」ペインで、「非同期処理」「無効」 (デフォルト)から「有効」に切り替えます。