この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

<aura:if> — 表示されない内容のクリーンアップ

この警告は、<aura:if> タグの isTrue 属性を true から false に変更した場合に発生します。<aura:if> の表示されない内容は破棄する必要があり、これによりフレームワークで表示にかかる時間が短縮されます。

次のコンポーネントは、アンチパターンを示しています。

コンポーネントのクライアント側コントローラを次に示します。

コンポーネントが作成されるときに、<aura:if> タグの isTrue 属性が評価されます。isVisible 属性の値はデフォルトで true なので、フレームワークによって <aura:if> タグのボディが作成されます。コンポーネントが作成されてから表示されるまでの間に、init イベントがトリガされます。

クライアント側コントローラの init() 関数で isVisible の値が true から false に切り替えられます。<aura:if> タグの isTrue 属性が false になったので、フレームワークは <aura:if> タグのボディを破棄する必要があります。この警告は、デバッグモードを有効にした場合にのみブラウザコンソールに表示されます。

警告のスタック追跡を表示するには、警告の横の展開ボタンをクリックします。

ブラウザコンソール、スタック追跡

ブラウザコンソールの [ソース] ペインに問題を起こしているコードの行を表示するには、スタック追跡で ifCleanUnrendered エントリのリンクをクリックします。

警告を修正する方法

isTrue 式のロジックを逆にします。isTrue 属性をデフォルトで true に設定せずに、false に設定します。必要に応じて、init() メソッドで isTrue 式を true に設定します。

次に、修正したコンポーネントを示します。

次に、修正したコントローラを示します。