NEOSテンプレートの1つでは、(指定した範囲内で)乱数を生成し、後で使用するために変数に格納する簡単なタスクを解決しようとします。別のビューヘルパーの結果を表示するFluid-Alias-View-Helper
デフォルトのビューヘルパーのいずれもこのような機能を提供していないので、私は独自のビューヘルパーを開発しました。これは最小値と最大値を必要とします。内部的にビューヘルパーはPHPのrand($min, $max)
を使用します。
次の例では、私のテンプレートで働いている:
site:RandomNumber(0, 17)
これは乱数を出力予想通り。しかし、今私は複数回使用する必要があるので、変数に結果を格納する必要があります。
私は -viewヘルパーに別名流体に出くわした:
<f:alias map="{number: 33}">
The number is {number}
</f:alias>
これは、その結果:
The number is 33
今、私は33ではない数をしたいが、私のRandomNumber
の結果-view-helper。しかしこれは言って例外がスローされます
<f:alias map="{number: {site:RandomNumber(0, 17)}}">
The number is {number}
</f:alias>
:
は、私は次のようなものを試していないf:alias
ビューヘルパーの The argument "map" was registered with type "array", but is of type "string"
in view helper "TYPO3\Fluid\ViewHelpers\AliasViewHelper"
ドキュメントは受け入れ値は、他のビューヘルパーであると言うが、彼ら決してそれについての例を挙げてください。
私はこのアプローチに完全に間違っていますか?単純に流体テンプレート内に単純な変数を割り当てることはできませんか?
詳細情報: 私はウェブサイト上のスライダーを持っていますが、これは(ほとんど)ページロード時に別のスライドから始める必要があります。だから私はスライダのマークアップで何度か参照しなければならないこのランダムなスライド番号をつかむ必要があります。
私はちょうど同様の問題を抱えていました。あなたの答えのために私は1つの式の周りに別の一重引用符を置かなかったので、私のも働いていないことに気付きました!ありがとう! :) 私の場合のように、中括弧が全体の式の周りにない場合でも、式全体にそれらを配置する必要があります: 'arguments = {" property: 'additionalInfos。{i.index} .infoValue' "}' –