2

Adobe CQ5.5 カスタム コンポーネントの開発に取り組んでいます。私が直面している問題は、複数のドラッグおよびドラッグ イメージをダイアログ ボックスに追加して、jcr コンテンツにマップすることです。

4

2 に答える 2

3

1 つのコンポーネント ダイアログに 2 つの画像タブを表示しようとしているようです。これを行う最も簡単な方法は、CRXDE lite を使用して、イメージ ノードを /libs/foundation/components/page/dialog/items/tabs/items/image からダイアログにコピーすることです。

ただし、落とし穴があります。1 つのコンポーネント ダイアログに 2 つの画像を配置しようとすると、ダイアログが画像の 1 つを正しく表示しないことに気付くでしょう (おそらく、「画像」という名前が付いていないものは何でも)。デフォルトの画像に加えてページのサムネイル画像を追加すると、この問題が発生しました。

この不正行為には 2 つの理由があります。まず、2 番目のイメージの requestSuffix プロパティは、最初のイメージとは異なる必要があります。問題を解決するにはこれで十分だと思うかもしれませんが、そうあるべきですが、何らかの理由で CQ は (これらの特定の) 画像コンテンツ ノードで sling:resourceType プロパティを作成しないため、リクエストは依然として適切に解決されません。ダイアログで。「image」という名前のノードの場合は正しく推論されているように見えますが、それ以外の場合はそうではありません。これは、このプロパティを手動で追加する必要があることを意味します。

sling:resourceType=foundation/components/image

2 番目のイメージのコンテンツ ノードに。ここでも、画像ダイアログ プロパティの requestSuffix プロパティの値を別の値に変更する必要があります (例: 「/thumbnail.img.png」)。サムネイルの先頭のスラッシュも必要です。(デフォルト値は「.img.png」です。デフォルトの画像コンポーネントは特別な扱いを受けるように見えるため、これは明らかな修正ではありません)

于 2013-04-17T19:46:59.517 に答える
-1

次のコードを使用して画像コンポーネント (/libs/foundation/components/image) のdialog.xmlを拡張し、編集ダイアログに 2 番目の画像を適切に表示します。

    <image
        jcr:primaryType="cq:Widget"
        cropParameter="./imageCrop"
        ddGroups="[media]"
        fileNameParameter="./fileName"
        fileReferenceParameter="./fileReference"
        mapParameter="./imageMap"
        name="./file"
        requestSuffix=".img.png"
        rotateParameter="./imageRotate"
        title="Thumbnail"
        xtype="html5smartimage"/>
    <thumb
        jcr:primaryType="cq:Widget"
        cropParameter="./thumbImageCrop"
        ddGroups="[media]"
        fileNameParameter="./thumbFileName"
        fileReferenceParameter="./thumbFileReference"
        mapParameter="./thumbImageMap"
        name="./thumb"
        requestSuffix="/thumb.img.png"
        rotateParameter="./thumbImageRotate"
        title="Image"
        xtype="html5smartimage"/>
于 2013-12-06T01:54:43.643 に答える