在配置部分使用自定义 ViewHelper
Using a custom ViewHelper in the configuration section
我写了一些 ViewHelpers,它们工作得很好,但只在 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()}
returns 一个字符串,例如
{0: '10', 1: '40'}
在主要部分这完全有效,但如果我在配置部分使用相同的 ViewHelper,它就不会再加载后端...我在 Typo3 中只得到一个空白字段,其中通常元素会出现。
如有任何建议,我将不胜感激!
您的 ViewHelper return 是 return 中的一个字符串,被流体解释为数组(大括号)。所以 fluid 什么也打印不出来。您确定不需要将该数组传递给另一个 ViewHelper,例如 flux:field.select
?
如果您需要从 ViewHelper 生成可用的数组,您应该使用
$templateVariableContainer = $renderingContext->getTemplateVariableContainer();
$templateVariableContainer->add($arguments['myNewVariable'], $array);
然后您可以像往常一样访问您的变量:
{myNewVariable.0}
我写了一些 ViewHelpers,它们工作得很好,但只在 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()}
returns 一个字符串,例如
{0: '10', 1: '40'}
在主要部分这完全有效,但如果我在配置部分使用相同的 ViewHelper,它就不会再加载后端...我在 Typo3 中只得到一个空白字段,其中通常元素会出现。
如有任何建议,我将不胜感激!
您的 ViewHelper return 是 return 中的一个字符串,被流体解释为数组(大括号)。所以 fluid 什么也打印不出来。您确定不需要将该数组传递给另一个 ViewHelper,例如 flux:field.select
?
如果您需要从 ViewHelper 生成可用的数组,您应该使用
$templateVariableContainer = $renderingContext->getTemplateVariableContainer();
$templateVariableContainer->add($arguments['myNewVariable'], $array);
然后您可以像往常一样访问您的变量:
{myNewVariable.0}