12

私は比較的簡単なものを実装しようとしています... data-sly-resource タグを介して、その内部に別のコンポーネント (内部コンポーネントと呼びましょう) を含む 1 つのコンポーネント (ラッパーコンポーネントと呼びましょう) があります。 :

<div data-sly-resource="${ 'inner' @ resourceType='/projectname/components/inner' }"></div>

このタグを使用していくつかの追加パラメーターを渡したいのですが、具体的には、内部コンポーネント テンプレートでサイトリーによって取得できるパラメーターですか? コンポーネントがdata-sly-resource経由で呼び出されたときに渡されるパラメーターに基づいて、内側のテンプレートの外側のhtmlタグがラップ解除されるかどうかを指定しようとしています。

見栄えの良いドキュメントを実験して熟読した後、これを達成する方法が見つかりません。

これが可能かどうか誰にもわかりますか?

どうもありがとう、

デイブ

4

4 に答える 4

0

残念だけど違う。見た目の機能を拡張する方法はありません。新しい data-sly 属性を追加したり、既存の属性を変更したりすることはできません。最善の方法は、 USE APIを使用して独自のヘルパーを作成することです。

于 2014-09-02T13:22:25.313 に答える
0

さまざまな状況で内部コンポーネントから html をラップまたはラップ解除する必要がある場合は、次の構文を使用して、ラップされていないコンポーネント内の html を保持し、必要な場合にのみラップすることができます。

<div data-sly-resource="${ 'inner' @ resourceType='/projectname/components/inner', decorationTagName='div', cssClassName='someClassName'}"></div>

より複雑なロジックが必要で、内部コンポーネント テンプレートに値を渡す必要がある場合は、セレクターを使用できます。セレクターを使用してリソースを含めるための構文は次のとおりです。

<div data-sly-resource="${ 'inner' @ resourceType='/projectname/components/inner', selectors='mySelectorName'}"></div>

内部コンポーネントのセレクターをチェックする構文は次のとおりです。

${'mySelectorName' in request.requestPathInfo.selectorString}"

また

${'mySelectorName' == request.requestPathInfo.selectorString}"
于 2020-04-15T18:18:15.680 に答える