ナビゲーションサイドバー
リニューアルされたナビゲーションサイドバーに追加や変更を貢献する場合は、以下のガイドラインに従ってください。
これらのガイドラインはナビゲーション・サイドバーの現在の状態を反映しています。しかし、サイドバーは進行中であり、この文書も進行中です。
新しいナビゲーション・サイドバーを有効にします
新しいナビゲーションサイドバーを有効にするには、アバターを選択し、新しいナビゲーショントグルをオンにします。
サイドバーへのアイテムの追加
サイドバーにアイテムを追加する前に、以下の手順に従ってください。
ページ固有のVueコンテンツの追加
Pages では、SidebarPortal
コンポーネントを使用して、任意のコンテンツをサイドバーにレンダリングできます。デフォルトのスロットに渡されたコンテンツは、サイドバーのそのページのナビゲーション項目の下にレンダリングされます。
1つのページでこのコンポーネントのインスタンスは1つだけサポートされます。これは、順序の問題とサイドバーの乱雑さを避けるためです。
任意のコンテンツを使用することができます。
::Sidebars::Panel
をサブクラス化して、ナビ項目を実装する必要があります。ナビアイテムのレンダリングにVueを使用しなければならない場合(たとえば、Vue Routerを使用する必要がある場合)は、例外とすることができます。ただし、対応するpanel.rb
ファイルに、ナビ項目のレンダリング方法を説明するコメントを追加する必要があります。SidebarPortalTarget
コンポーネントは使用しないでください。これはサイドバーの内部です。除雪車の追跡
ナビアイテムのクリックはすべてSnowplowで自動的にトラッキングされるはずですが、追加入力が必要な場合もあります。Snowplowにデータを送信するために、ナビのすべての要素にdata-tracking
属性を使用しています。GDKでsnowplowをセットアップすることで、これらが機能していることをテストできます。
フィールド|データ属性|ページ|例| –| –| –| カテゴリ|data-tracking-category |アイテムがクリックされたときにユーザーがいたページ。 |
groups:show |アクション|data-tracking-action |実行されたアクション。多くの場合、これはclick_link またはclick_menu_item
| click_link | Label | data-tracking-label | クリックされたものの説明。これはほとんどの場合、アイテムのIDによって推測されますが、item_without_id 。 これは注意すべきものです。 |
group_issue_list |プロパティ|data-tracking-property |リンクがナビのどの内部でクリックされたかを記述します。メインナビパネルにある場合は、どのパネルかを記述する必要があります。 | プロパティ|nav_panel_group |。 |