メインコンテンツへスキップ
ナビゲーションメニュー項目は、左サイドバー内の 1 つのエントリです。 カスタムのサイドバーリンクを提供するには defineNavigationMenuItem() を使用します。通常は、提供する各ビューごとに 1 つずつ、または外部 URL を指すリンクとして使用します。
src/navigation-menu-items/example-navigation-menu-item.ts
import { defineNavigationMenuItem, NavigationMenuItemType } from 'twenty-sdk/define';
import { EXAMPLE_VIEW_UNIVERSAL_IDENTIFIER } from '../views/example-view';

export default defineNavigationMenuItem({
  universalIdentifier: '9327db91-afa1-41b6-bd9d-2b51a26efb4c',
  name: 'example-navigation-menu-item',
  icon: 'IconList',
  color: 'blue',
  position: 0,
  type: NavigationMenuItemType.VIEW,
  viewUniversalIdentifier: EXAMPLE_VIEW_UNIVERSAL_IDENTIFIER,
});

主なポイント

  • type は、そのメニュー項目がどこにリンクするかを決定します。 各 type は、特定の識別子フィールドと組み合わされます。
    タイプ機能必須フィールド
    NavigationMenuItemType.VIEW保存済みビューを開きますviewUniversalIdentifier
    NavigationMenuItemType.LINK外部 URL を開きますlink
    NavigationMenuItemType.FOLDERネストされた項目をラベルの下にグループ化しますname(子項目は folderUniversalIdentifier を通じてフォルダを参照します)
    NavigationMenuItemType.OBJECTオブジェクトのデフォルトのインデックスページを開きますtargetObjectUniversalIdentifier
    NavigationMenuItemType.PAGE_LAYOUTスタンドアロンのページレイアウトを開きますpageLayoutUniversalIdentifier
  • position はサイドバーでの表示順を制御します。
  • iconcolor は任意で、エントリの見た目をカスタマイズします。
  • folderUniversalIdentifier は、任意の項目で利用でき、その項目を FOLDER タイプの親の内側にネストするために使用します。
よくある落とし穴: ビューおよびナビゲーションメニュー項目が関連付けられていないオブジェクトを作成すると、そのオブジェクトはユーザーから見えなくなります。 技術的/内部的なオブジェクトでない限り、すべてのカスタムオブジェクトには、デフォルトビューと、それを指すサイドバーエントリの両方を用意する必要があります。