如何在渲染回调中显示内部块

时间:2019-11-05 作者:Razvan Cuceu

我有一个块复制了;“列”;块我的问题是我不想使用默认值save 函数,但改用回调函数。正如我所用InnerBlocks我的edit 看起来像这样

edit: ( props, setAttributes, className ) => {
.
.
.
<InnerBlocks
   template={ getColumnsTemplate( props.attributes.columns ) }
   templateLock="all"
   allowedBlocks={ ALLOWED_BLOCKS } />
默认情况下,“保存”功能将使用此作为返回输出内容:<InnerBlocks.Content />

应该如何render_callback php中的函数InnerBlocks 所容纳之物

也如果save 退货null 然后我放在块中的内容不会被保存。

1 个回复
SO网友:mlbrgl

save(JS)

默认情况下,save函数输出内容,并将其作为返回:<InnerBlocks.Content />

这部分还可以,你还是应该返回<InnerBlocks.Content /> 在保存功能中:

save: props => <InnerBlocks.Content />

Source

如果在动态块中使用InnerBlocks,则需要使用将InnerBlocks保存在save回调函数中<InnerBlocks.Content/>

https://developer.wordpress.org/block-editor/tutorials/block-tutorial/creating-dynamic-blocks/

render\\u回调(PHP)

function render($attributes, $content)
{
    return $content;
}

Source

无论在save函数中返回什么,都是在PHP render函数的$content变量中`

https://github.com/WordPress/gutenberg/issues/6751#issuecomment-451550734

相关推荐