Guntenberg 自定义帖子列表自定义块

问题描述

嗨,我一直在关注官方教程 https://developer.wordpress.org/block-editor/tutorials/block-tutorial/creating-dynamic-blocks/ 使用自定义帖子类型创建动态块,我有一个问题。他们的示例仅在编辑器中显示 1 个帖子:

return (
        <div { ...blockProps }>
            { ! posts && 'Loading' }
            { posts && posts.length === 0 && 'No Posts' }
            { posts && posts.length > 0 && (
                <a href={ posts[ 0 ].link }>
                    { posts[ 0 ].title.rendered }
                </a>
            ) } 
        </div>
    )

我试过换线

<a href={ posts[ 0 ].link }>
       { posts[ 0 ].title.rendered }
</a>

posts.map(post => (
     <li key={post.id}>{post.title} </li>
))

甚至像这样使用整个块

<div { ...blockProps }>
   { posts.map(post => (
         <li key={post.id}>{post.title} </li>
    )) }
</div>

但它要么显示错误

最小化的 React 错误 #31;访问 https://reactjs.org/docs/error-decoder.html?invariant=31&args[]=object%20with%20keys%20%7Braw%2C%20rendered%7D&args[]= 获取完整消息,或使用非缩小开发环境获取完整错误和其他有用警告。

无法读取 null 的属性 'map'

如何遍历帖子,以便向编辑页面的人展示他们将看到的帖子的预览?我已经设置了服务器端渲染,所以我知道如何控制保存页面中的输出,但是我在编辑部分很难做到这一点。

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)