AEM ユニバーサルエディターの複合マルチフィールドでは、カスタムアセットピッカーはサポートされていません
この記事では、Adobe Experience Manager(AEM)ユニバーサルエディターの複合マルチフィールドコンテナ内でカスタムアセットピッカーフィールドを使用すると、現在の制限が正しく機能しない場合について説明します。 サポートされているフィールドタイプまたは代替のコンポーネントデザインを使用して、この動作を回避します。
説明 description
環境
Adobe Experience Manager(AEM)ユニバーサルエディター/ドキュメントオーサリング(すべてのバージョン)
問題/症状
-
カスタムアセットピッカーコンポーネント (例:
custom-asset-namespace:custom-asset)は、複合マルチフィールドコンテナ (multi: trueを持つコンテナコンポーネント)内に配置すると、期待どおりに機能しません。 -
カスタムアセットピッカーはスタンドアロンフィールドとして正しく機能しますが、複合マルチフィールド内にネストすると、適切にレンダリングまたは操作できません。
-
明示的なエラーメッセージは表示されませんが、アセットの選択と値のバインディングは、ネストされたコンテキストで意図したとおりに機能しません。
コンポーネントモデル定義の例:
code language-none { "component": "container", "name": "saleImages", "label": "Sale images", "multi": true, "fields": [ { "component": "text", "name": "saleName", "label": "Sale name", "valueType": "string" }, { "component": "custom-asset-namespace:custom-asset", "name": "SaleImage", "label": "Sale image", "description": "This image will be used for any sale that doesn't have a specific image defined.", "configUrl": "/content/dam/image.config.json", "required": true } ] }
解決策 resolution
-
ユニバーサルエディターで
multi: trueと共に使用するには、シンプルなフィールドタイプ(text、reference、aem-contentなど)のみが正式にサポートされていることを確認してください。 ユニバーサルエディターフィールドタイプ を参照してください。 メモ:valueType: array(複合マルチフィールド)を持つコンテナコンポーネントは、現在、すべてのフィールドタイプのユニバーサルエディタープロパティパネルではサポートされていません。- コンポーネントモデルのドキュメント では、複合マルチフィールドを高度なパターンとして説明しており、すべてのカスタムフィールドタイプまたは拡張フィールドタイプとの互換性を保証するものではありません。
- 高度な複合フィールドパターンの今後のサポートについて、ユニバーサルエディターのリリースノートとドキュメントを監視します。
-
設定可能なアセットピッカー拡張機能を単一のフィールド(フィールドごとに1つのアセット値)として使用します。 メモ:
- この拡張機能は、単一のフィールドとして使用するように設計およびテストされており、ネストされたフィールドや複合マルチフィールド内での繰り返し使用は禁止されています。
saleImages/item0/SaleImageなどのネストされたデータ構造のサポートは、現在、実装または文書化されていません。
-
正式なサポートが文書化されるまで、ユニバーサルエディターの複合マルチフィールドコンテナ内にカスタムアセットピッカーフィールドを配置しないでください。
-
この機能が重要な場合は、AEM製品フィードバックチャネルから機能リクエストを送信します。
-
ネストされたフィールドの処理と拡張機能の互換性に制限があるため、現在、ユニバーサルエディターでは複合マルチフィールドとカスタムアセットピッカー拡張機能はサポートされていません。