使用法
一般的なインターフェースを作成するには、Toolbarコンポーネント内でToolbarButtonをレンダリングする必要があります。
import { Toolbar, ToolbarDropdownMenu } from '@wordpress/components';
import {
more,
arrowLeft,
arrowRight,
arrowUp,
arrowDown,
} from '@wordpress/icons';
function MyToolbar() {
return (
<Toolbar label="Options">
<ToolbarDropdownMenu
icon={ more }
label="Select a direction"
controls={ [
{
title: 'Up',
icon: arrowUp,
onClick: () => console.log( 'up' ),
},
{
title: 'Right',
icon: arrowRight,
onClick: () => console.log( 'right' ),
},
{
title: 'Down',
icon: arrowDown,
onClick: () => console.log( 'down' ),
},
{
title: 'Left',
icon: arrowLeft,
onClick: () => console.log( 'left' ),
},
] }
/>
</Toolbar>
);
}
ブロックコントロールの内部
カスタムブロックに取り組んでいて、ブロックツールバーにコントロールを追加したい場合は、代わりに BlockControls を使用する必要があります。
import { BlockControls } from '@wordpress/block-editor';
import { Toolbar, ToolbarDropdownMenu } from '@wordpress/components';
import {
more,
arrowLeft,
arrowRight,
arrowUp,
arrowDown,
} from '@wordpress/icons';
function Edit() {
return (
<BlockControls group="block">
<ToolbarDropdownMenu
icon={ more }
label="Select a direction"
controls={ [
{
title: 'Up',
icon: arrowUp,
onClick: () => console.log( 'up' ),
},
{
title: 'Right',
icon: arrowRight,
onClick: () => console.log( 'right' ),
},
{
title: 'Down',
icon: arrowDown,
onClick: () => console.log( 'down' ),
},
{
title: 'Left',
icon: arrowLeft,
onClick: () => console.log( 'left' ),
},
] }
/>
</BlockControls>
);
}
プロップス
このコンポーネントは DropdownMenu コンポーネントの同じAPIを受け入れます。