使用法

プロパティとして

カスタムコンポーネントまたは任意のHTML要素でasプロパティを使用できます。

  1. import { Toolbar, ToolbarItem, Button } from '@wordpress/components';
  2. function MyToolbar() {
  3. return (
  4. <Toolbar label="Options">
  5. <ToolbarItem as={ Button }>I am a toolbar button</ToolbarItem>
  6. <ToolbarItem as="button">I am another toolbar button</ToolbarItem>
  7. </Toolbar>
  8. );
  9. }

レンダープロパティ

子要素を関数として渡すことで、ToolbarItemプロパティを取得し、それを別のコンポーネントに渡すことができます。

  1. import { Toolbar, ToolbarItem, DropdownMenu } from '@wordpress/components';
  2. import { table } from '@wordpress/icons';
  3. function MyToolbar() {
  4. return (
  5. <Toolbar label="Options">
  6. <ToolbarItem>
  7. { ( toolbarItemHTMLProps ) => (
  8. <DropdownMenu
  9. icon={ table }
  10. toggleProps={ toolbarItemHTMLProps }
  11. label={ 'Edit table' }
  12. controls={ [] }
  13. />
  14. ) }
  15. </ToolbarItem>
  16. </Toolbar>
  17. );
  18. }

BlockControls内

カスタムブロックに取り組んでいて、ブロックツールバーにコントロールを追加したい場合は、代わりにBlockControlsを使用する必要があります。オプションでToolbarGroupでラップすることもできます。

  1. import { BlockControls } from '@wordpress/block-editor';
  2. import { ToolbarGroup, ToolbarItem, Button } from '@wordpress/components';
  3. function Edit() {
  4. return (
  5. <BlockControls>
  6. <ToolbarGroup>
  7. <ToolbarItem as={ Button }>I am a toolbar button</ToolbarItem>
  8. </ToolbarGroup>
  9. </BlockControls>
  10. );
  11. }

関連コンポーネント

  • ToolbarItemはToolbarまたはToolbarGroup内で使用する必要があります。
  • シンプルなツールバーボタンが必要な場合は、代わりにToolbarButtonを使用することを検討してください。