这是我的逐步方案:
但是,我无法使用'load-post-widget'编辑获取的帖子内容,我想我不确定如何返回帖子内容,因此Gutenberg将其视为可编辑的形式。请帮助。
Qn:如何将任何post.content.raw渲染为可使用Gutenberg进行编辑的react元素。
这里是示例代码,如步骤3所示:
registerBlockType( 'test/load-post-widget', {
title: 'Load Post Widget',
icon: 'smiley',
category: 'widgets',
edit: withSelect((select) => {
return { posts: select('core').getEntityRecords('postType', 'post')};
})(({ posts, className }) => {
if ( ! posts ) {
return 'Loading...';
}
if ( posts && posts.length === 0 ) {
return 'No posts';
}
let post = posts[0]; // hard coded as of now.
// Option 1: This does not make the rendered post content/blocks editable
return <div dangerouslySetInnerHTML={ { __html: post.content.raw } }></div>
} ),
} );