StyleClass

StyleClass は、エンター/リーブアニメーション中、または要素へのクラスの切り替えに、CSSクラスを宣言的に管理します。


import { StyleClass } from 'primereact/styleclass';
         

StyleClass は、要素のrefを指すnodeRefプロパティを使用して、クリックイベントをトリガーする要素にバインドされます。スタイリングを変更するターゲット要素は、selectorプロパティで定義され、@nextprevparentgrandparentを含む任意の有効なCSSセレクターまたはキーワードを受け入れます。


<StyleClass nodeRef={toggleBtnRef} selector="@next" toggleClassName="p-disabled" />
<Button ref={toggleBtnRef} label="Toggle p-disabled" />
<InputText />
         

エンターおよびリーブアニメーション中に適用するクラスは、enterClassNameenterActiveClassNameenterToClassNameleaveClassNameleaveActiveClassNameleaveToClassNameプロパティを使用して指定します。さらに、ターゲットがオーバーレイの場合、ポップアップの外側をクリックするとターゲットを非表示にするhideOnOutsideClickが便利です。


<StyleClass nodeRef={openBtnRef} selector=".box" enterClassName="hidden" enterActiveClassName="fadein">
    <Button ref={openBtnRef} label="Show" className="mr-2" />
</StyleClass>

<StyleClass nodeRef={closeBtnRef} selector=".box" leaveActiveClassName="fadeout" leaveToClassName="hidden">
    <Button ref={closeBtnRef} severity="secondary" label="Hide" />
</StyleClass>

<div className="hidden animation-duration-500 box">
    <div className="flex bg-green-500 text-white align-items-center justify-content-center py-3 border-round-md mt-3 font-bold shadow-2 w-8rem h-8rem">Content</div>
</div>