块验证:`my-lock`的块验证失败

时间:2018-09-20 作者:André Kelling

我的想法是为下载卡模板编写自己的块

我将我的主题(也可以在单个插件中)配置为向古腾堡编辑器添加一个新块。

我只是把我的save函数放在这里。因为这就是它的意义所在。它应该是一个带有图像、标题、文本和文件下载链接的下载卡。一切正常:

save: ( props ) => {
            const {
                className,
                attributes: {
                    title,
                    mediaID,
                    mediaURL,
                    mediaAlt,
                    textContent,
                    fileID,
                    fileURL,
                    fileType,
                    fileDesc,
                    fileSize,
                },
            } = props;
            return (
                <div className={ className }>
                    <div className="bl-dc__image">
                        {
                            mediaURL && (
                                <img className="image" src={ mediaURL } alt={ mediaAlt ? mediaAlt : __( \'Download Image\') } />
                            )
                        }
                    </div>
                    <div className="bl-dc__content">
                        <h2 className="bl-dc__title">
                            {title}
                        </h2>

                        <p className="bl-dc__text">
                            { textContent }
                        </p>

                        {
                            fileURL && (
                                <a
                                    className="bl-dc__bt btn btn--primary"
                                    href={ fileURL } title={ __( \'Download\') + (fileDesc && \' \'+fileDesc) + (fileSize && \' \'+fileSize) }
                                >
                                    { __( \'Download\') + (fileType && \' (\'+fileType+\')\') }
                                </a>
                            )
                        }
                    </div>


                </div>
            );
        }
所以当我去换一门课的时候。像buttons类bl-dc__btbl-dc__btn. 我确实收到一个验证错误。我需要提及字段是否已填充!在这种情况下,文件上载。

这是预期的行为吗?我的块在编辑器中分解,甚至字段和所有backendish的名称都是一样的。开发块很快就会令人沮丧,因为如果我想在继续工作的同时尝试或扩展标记,我必须在编辑器中反复设置和填充块。如果我的客户说:“嘿,你能在那里添加一个图标字段吗?”这是不可能的?

我在github中找到了关于该主题的讨论:https://github.com/WordPress/gutenberg/issues/4849

还有一些有关已弃用块的信息:https://wordpress.org/gutenberg/handbook/block-api/deprecated-blocks/

我就是想不出来。

作为开发人员,如果字段被填充,我是否能够在不破坏编辑功能的情况下更改块的模板?

1 个回复
最合适的回答,由SO网友:Ashiquzzaman Kiron 整理而成

由于Gutenberg目前处于开发模式,所以在它融入Core之前,一切都会中断,不会有一套标准的规则和指导方针。我也遇到过同样的问题,在这里和那里改变一件事打破了当前的障碍,这让我非常沮丧。

在那之前,像我们这样的开发人员必须忍受这样的麻烦。如果你需要更多关于核心模块如何实现的示例,这里有一个-WordPress Core Block

结束

相关推荐