2016-06-01 1 views
0

AEM開発に関するAdobeの文書によれば、すべての画像レンダリングコンポーネントに対してparbaseコンポーネントを継承する必要があります。 誰もがこの必要性の背後に論理的根拠を共有してください?また、他の誰かがこれに代わるものを指し示してくれましたか?すべての画像コンポーネントに対してparbaseコンポーネントを継承する必要がある理由

+0

[Parbaseコンポーネントの使用はどのようなものです:]の可能な重複(https://stackoverflow.com/questions/21400388/what-is-the-use- of-parbase-component) – Dileepa

答えて

0

アドビAEMフォーラムのポストでトイレを持っていてください - http://help-forums.adobe.com/content/adobeforums/en/experience-manager-forum/adobe-experience-manager.topic.html/forum__3vh2-why_do_we_needtoin.html

Parbaseはちょうどあなたには、いくつかのOOTBの機能を取得するために拡張し、そこから構成要素です。

技術的な言葉で言えば、Javaなどのオブジェクト指向言語のサブクラスと同様に、コンポーネントが他のコンポーネントの属性を継承できるため、Parbaseは主要コンポーネントです。

たとえば、CRXエクスプローラで/ libs/foundation/components/textノードを開くと、parbaseコンポーネントを参照するsling:resourceSuperTypeという名前のプロパティがあることがわかります。ここのparbaseは、イメージ、タイトルなどをレンダリングするためのツリースクリプトを定義しているため、このparbaseからサブクラス化されたすべてのコンポーネントでこのスクリプトを使用できます。

独自のコンポーネントを作成しているときに、parsysでドラッグドロップでコンポーネントを有効にする必要がなければ、スーパータイプとして 'parbase'を追加する必要はありません。

AFAIKでは、parbaseコンポーネントは明示的には使用されませんが、Parsysで追加されたコンポーネントのレンダリングが容易になります。

は、オーサリング可能とドラッグ可能なコンポーネントのほとんどは、彼らの「スリングとして設定「parbase」を持って、あなたは「/ libsに/基盤/コンポーネント」の下にチェックした場合

「parbaseは、コンポーネントが他のコンポーネントから属性を継承することができます」。 (Parsysコンポーネント)に追加したときに画像とテキストのレンダリングプロパティを継承できるように、「resourceSuperType」を追加しました。

ドキュメントへのリンク: - https://docs.adobe.com/docs/en/cq/5-6-1/wcm/default_components/designmode.html#parbase

私はこのことができます願っています。

おかげで、よろしく

Kautukサーニ

0

parbaseには、 'img'セレクタを持つすべてのリクエストを処理するimg.GET.javaファイルがあります。 'component.img.png'を呼び出すと、イメージが処理されます。 parbaseを継承しない場合は、2つのオプションがあります。コンポーネントのimg.GET.javaを実装するか、イメージのリソースタイプをコンポーネントに保存します。私は通常、サブノードにイメージデータを格納するコンポーネントを持っているときに、後で行います。

私は、サブノードと呼ばれる画像で画像を保存したい場合は、これは私がdialog.xmlに追加するものです。

 <image 
      jcr:primaryType="cq:Widget" 
      cropParameter="./image/imageCrop" 
      ddGroups="[media]" 
      fileNameParameter="./image/fileName" 
      fileReferenceParameter="./image/fileReference" 
      mapParameter="./image/imageMap" 
      name="./image/file" 
      requestSuffix="/image.img.png" 
      rotateParameter="./image/imageRotate" 
      title="Image" 
      xtype="html5smartimage"> 
      <items jcr:primaryType="cq:WidgetCollection"> 
       <restype 
        jcr:primaryType="cq:Widget" 
        ignoreData="{Boolean}true" 
        name="./image/sling:resourceType" 
        value="/libs/foundation/components/image" 
        xtype="hidden"/> 
      </items> 
     </image> 

このアプローチは、ここで、例えば、議論されている:AEM Page Image in Page Properties Doesn't Apply a sling:resourceType

+0

例を追加して編集しました。 – brunovianarezende

関連する問題