在配置部分中使用自定义ViewHelper

时间:2016-06-30 12:34:46

标签: typo3 fluid view-helpers viewhelper

我写了一些完全正常的ViewHelper,但只在Main-Section中...为了更好地理解:

<f:section name="Configuration">
  <flux:field.select name="first" label="first" items="{0: '10', 1: '40'}"/>
  <flux:field.select name="second" label="second" items="{myViewHelpers:load()}"/>
</f:section>
<f:section name="Preview">
</f:section>
<f:section name="Main">
  {myViewHelpers:load()}
</f:section>

{myViewHelpers:load()}返回一个字符串,例如

  

{0:&#39; 10&#39;,1:&#39; 40&#39;}

在Main-Section中,这完全有效,但是如果我在Configuration-section中使用相同的ViewHelper,它就不会再加载后端......我只在Typo3中得到一个空白字段,其中通常这个元素出现了。

我很感激任何建议!

1 个答案:

答案 0 :(得分:0)

您的ViewHelper返回一个字符串,该字符串由fluid解释为数组(花括号)。因此流体打印出来。您确定不需要将该数组传递给另一个ViewHelper,例如flux:field.select吗?

如果您需要从ViewHelper生成可用的数组,则应使用

$templateVariableContainer = $renderingContext->getTemplateVariableContainer();
$templateVariableContainer->add($arguments['myNewVariable'], $array);

然后您可以像往常一样访问您的变量:

{myNewVariable.0}