为啥 settings.split 返回 "" 而不是 <f:debug> 显示的预期数组值?
Posted
技术标签:
【中文标题】为啥 settings.split 返回 "" 而不是 <f:debug> 显示的预期数组值?【英文标题】:Why does settings.split return "" instead of the expected array value shown by <f:debug>?为什么 settings.split 返回 "" 而不是 <f:debug> 显示的预期数组值? 【发布时间】:2021-02-15 22:02:17 【问题描述】:我正在使用 Flux 创建一个两列内容元素(基于以前的流体引导主题的内容,因为当时我正在使用它)。
在内容模板中使用变量settings.split
时,它会在<f.debug>
转储中显示值a
。但是,在浏览器中渲染时,使用 settings.split
不会返回任何内容。
我不明白为什么它不返回a
。
标题为adsettings.split
的变量按预期返回a
。
你能给我一些建议吗? 非常感谢!
Templates/Content/TwoColumn.html 中的代码示例:
<f:layout name="Default" />
<f:section name="Configuration">
<f:debug>_all</f:debug>
<flux:form id="andre">
<flux:form.sheet name="colSettings">
<flux:field.select name="adsettings.split"
items="a,b,c,d"
default="a"
requestUpdate="1">
</flux:field.select>
<flux:field.select name="settings.split"
items="a,b,c,d"
default="a"
requestUpdate="1">
</flux:field.select>
</flux:form.sheet>
</flux:form>
</f:section>
<f:section name="Preview">
settings.split
split
</f:section>
<f:section name="Main">
ADSettings: adsettings.split
Settings: settings.split
</f:section>
截图:
版本:
错字3 10.4.9 助焊剂 9.4.2 Vhs 6.0.4【问题讨论】:
【参考方案1】:也许您之前在后台保存和编辑后重命名了该字段?代码是正确的,我在我的 FCE 中测试过。
解决方案: 删除元素并创建一个新元素,然后它就可以工作了。
【讨论】:
注意:每个部分都有自己的上下文和定义的变量。通常只有您提供arguments
参数的那些。
如果您在部分中输入<f:debug>_all</f:debug>
,您将看到不同的(无)变量。
如果你想在你的部分中使用变量,你需要参数。
您要么只传输单个参数,例如:<f:render section="Main" arguments="par1:'string, par2:fluidVar" />
或者您通过以下方式传输所有可用的流体变量:<f:render section="Main" arguments="_all" />
【讨论】:
非常感谢。在我的示例中,我在 TypoScript setup.txt 中设置了一个数组 plugin.tx_ExtensionName.settings,然后与模板中的 settings.split 叠加。 Main-Section 只看到 TypoScript 中的数组,而不是 Configuration 部分中的数组。以上是关于为啥 settings.split 返回 "" 而不是 <f:debug> 显示的预期数组值?的主要内容,如果未能解决你的问题,请参考以下文章
Laravel Passport 基本 api 身份验证返回 "error":"invalid_client","message":&quo
我自己组装的json数据 传到后台 会部分丢失 是为啥 js,json,后台