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

アプリケーションのデバッグ

Slate アプリケーションは非常に複雑になる場合があり、何百ものウィジェット、関数、クエリ、イベントが依存関係のウェブを作り出します。Slate アプリケーションのパフォーマンス問題は、期待されるデータがないテーブルやボタンが期待される反応を出さないなど、ユーザー インターフェースで初めて遭遇することがよくあります。しかし、これらの問題の根本原因はバックエンドのどこかにあるかもしれません。

Slate の ヘルスチェックダイアログデバッガー は、ウィジェットの古いデータや不正確なデータを防ぎながら、エラーの調査と解決を支援します。

ヘルスチェックダイアログ は、すべてのエラーや警告を一つのビューにまとめることで、アプリケーションビルダーが失敗したクエリと関数をすばやく特定し解決するのを支援します。

デバッガー は、ブレークポイントを使用したアプリケーションのテストを可能にし、Slate アプリケーションのコンポーネント全体にわたる問題を発見し解決するのを容易にします。これにより、アプリケーションビルダーは、他のアプリケーションコンポーネントに対する変更の下流の影響を理解するのに役立ちます。

ヘルスチェックダイアログ

Slate アプリケーションが編集モードで開かれると、Slate はすべてのクエリと関数の成功したランタイムをロード時に自動的にチェックします。しかし、ユーザーは、条件付きのクエリは、デフォルトのアプリケーション状態で条件が満たされていない場合、実行されないことに注意する必要があります。

遭遇したエラーや警告は、ページの上部に位置する アクションバー に表示されます。

ヘルスチェックダイアログボタンを赤い四角で強調した Slate アプリケーションバー

問題のアイコンを選択してヘルスチェックダイアログを開きます。ここから、キャンバスまたは依存関係グラフビューで問題を引き起こしているクエリまたは関数に直接ジャンプします。

クエリと関数のすべてのエラーと警告を表示するヘルスチェックダイアログ

エラーは クエリ または 関数 のパネルでも見ることができます。クエリパネルはすべての失敗したクエリを強調表示します。 テスト を選択してクエリを実行し、詳細なエラーを確認します。

クエリのエラーを強調表示するクエリパネル

関数パネルはすべての失敗した関数を強調表示しません。関数を実行するには、 テスト を選択します。失敗した場合、これにより詳細なエラーメッセージが表示され、さらなる分析が可能になります。

関数のエラーを強調表示する関数パネル

デバッガー

Slate のデバッガーは、エラーの調査を簡素化し、関連するすべての情報を一つのビューで提供します。

デバッガー

デバッガーの有効化

デバッガーを有効または無効にするには、依存関係タブの右上角にある デバッガー をトグルします。

デバッガーを有効にすると、グラフに新しい機能が追加されます。新しいボトムドロワーが利用可能になり、ドロワーの左側では、現在 ブレークポイント が設定されているすべてのノードを確認することができます。このドロワーから、アプリケーションを実行し更新することができます。ドロワーの右側では、選択されたノードの現在の値のプレビューを見ることができます。

ブレークポイントの設定

コンポーネントがグラフに追加された後、任意のコンポーネントにブレークポイントを設定することができます。ブレークポイントを追加するには、グラフ上のノードにカーソルを置き、ノードの上に表示される ブレークポイント を選択します。ブレークポイントが設定されると、そのノードに対するエントリがボトムドロワーに表示されます。

アプリケーションを実行または更新すると、ブレークポイントが設定されたノードが実行される前に実行が一時停止します。

ノードの実行と更新

デバッグ中には、ある時点でノードまたはコンポーネントのチェーンを再実行する必要があるかもしれません。ノードは異なる方法で再実行することができます。デバッガーでは、任意のノード上の再生ボタンを選択することで、選択されたノードから始まるすべてのノードを実行し、次のブレークポイントに到達したところで停止します。

また、ボトムドロワーの更新ボタンをクリックして、アプリケーション全体を更新することもできます。アプリケーションを更新すると、ページを再読み込みすることなく、すべてのイベントが再トリガーされます。

最後に、Slate アプリケーション自体でアクションを実行することで、手動でノードをトリガーすることもできます。アプリケーション インターフェースでクエリを実行するか、ボタンを選択すると、デバッガー内でノードを手動で実行するのと同様の動作をします。