在 WordPress 中创建自定义块类型时出现类型错误

问题描述 投票:0回答:1

我正在尝试创建一个自定义块,并且我想使用 RichText。

我愿意(我已经缩短了代码)。但是找到任何使用 RichText 的示例,它对我来说失败了:

import { registerBlockType } from '@wordpress/blocks';
import { RichText, useBlockProps } from '@wordpress/block-editor';

...

edit: (attributes, setAttributes) => {
        const blockProps = useBlockProps();

        return (
          <div>
              Richtext:
              <RichText />
          </div>
        );
    },

我在控制台中看到的错误是:

TypeError:无法读取未定义的属性(读取“useBlockProps”)

我还运行/安装了这些软件包或它们的名称。 npm install @wordpress/editor -save npm install @wordpress/block-editor -save npm @wordpress/components -save

wordpress gutenberg-blocks
1个回答
0
投票

虽然问题比较老,但我找到了解决方法。

似乎没有找到所需的模块。但是当我打开具有相同模块的其他插件时,这些块显示正常。那么,也许构建文件夹的生成方式存在问题?

WordPress 现在提供了一个模块,允许您创建和使用独立块。我尝试过这种方法:

$ npx @wordpress/create-block@latest --variant dynamic

使用该命令,我在插件中生成了一个插件。重写了 init.php 文件,这样我的插件就能找到这些文件。后来一切顺利

这是 @wordpress/create-block 上 WordPress 开发人员参考的链接。

https://developer.wordpress.org/block-editor/reference-guides/packages/packages-create-block/

希望有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.