次世代プラットフォーム

アプリケーション提供のナビゲーション・バーの変更

現在、アプリケーションのナビゲーション・バーには、グローバル検索およびアラート・メニュー・オプションが含まれています。 ビジネスの必要に応じてナビゲーション・バーを拡張し、カスタマイズされたグローバル検索またはアラート・メニュー・オプションを表示することができます。 あるいは、ナビゲーション・バーでグローバル・メニュー・オプションまたはアラート・メニュー・オプションを非表示にしたり、メニュー・オプションを追加したりすることもできます。

ナビゲーション・バーは、オーバーライド拡張性と差分拡張性の両方をサポートします。 ビジネス・ユース・ケースに基づいて、以下のいずれかの方法を選択できます。

オーバーライド拡張性のアプローチでは、ナビゲーション・バーのソース・コードを所有できます。 オーバーライド拡張性アプローチは、ホーム・ページまたはナビゲーション・バーで差分拡張性アプローチを使用して達成できない機能をプラグインするための拡張ポイントとして使用します。 詳細については、 オーバーライド拡張性によるナビゲーション・バーのカスタマイズを参照してください。

差分拡張性によるメニュー・オプションの拡張

現在、ナビゲーション・バーには、対応する <store-temp>/<packages>/libs/functional-components/src/lib ディレクトリーに存在するグローバル検索およびアラート・メニュー・オプションが含まれています。
  • 「アラート」ナビゲーション・コンポーネントがナビゲーション・バーに表示され、着信アラートが表示されます。 このコンポーネントは <store-temp>/packages/libs/functional-components/src/lib/alert ディレクトリーにあり、ベル・アイコンをクリックすると展開または省略されます。
  • グローバル検索ナビゲーション・コンポーネントがナビゲーション・バーに表示されます。 グローバル検索を実行して、オーダーを素早く開くことができます。 このコンポーネントは <store-temp>/packages/libs/functional-components/src/lib/global-search ディレクトリーにあり、検索アイコンをクリックすると展開または省略されます。
ナビゲーション・バーでは、以下のカスタマイズのユース・ケースがサポートされています。
  • アプリケーション提供のグローバル検索およびアラート・メニュー・オプションをカスタム・コンポーネントに置き換えることができます。
  • アプリケーション提供のグローバル検索およびアラート・メニュー・オプションを非表示にすることができます。
  • メニュー・オプションを追加できます。 詳しくは、 メニューオプションの追加を参照してください。

アプリケーション提供のナビゲーション・バー・メニュー・オプションをカスタム・コンポーネントにマップするには、 <store-temp>/extensions/features/override-component/src/assets/override-component/config/isf-navbar-extn-config.json ファイルを使用します。 JSON ファイルで、アプリケーション提供のコンポーネントの固有 ID を、オーバーライドされたコンポーネントにマップしていることを確認してください。

以下の表では、 isf-navbar-extn-config.json ファイルのスキーマ定義について説明します。
表 1. スキーマ定義の属性と記述
属性名 説明
menuTID ナビゲーション・バーに表示されるメニュー・オプションの固有 ID を指定します。

有効な値は navBarMenuWidget_1 または navBarMenuWidget_2です。

componentName ナビゲーション・バーにロードされるコンポーネント名を指定します。 例えば、 AlertsExtnComponentGlobalSearchExtnComponentなどです。
表示 ナビゲーション・バーでメニュー・オプションを表示するか非表示にするかを示します。

有効な値は true または false です。 デフォルト値は true に設定されています。

アプリケーション提供のナビゲーション・コンポーネントをオーバーライドする場合は、表で説明されている属性で <store-temp>/extensions/features/override-component/src/assets/override-component/config/isf-navbar-extn-config.json を更新します。

以下のサンプル isf-navbar-extn-config.json ファイルは、グローバル検索メニューを非表示にして、アプリケーション提供のアラート・メニュー・オプションを AlertsExtensionComponent カスタム・コンポーネントに置き換える方法を示しています。

[
    {
        "menuTID": "navBarMenuWidget_1",
        "display": false
    },
    {
        "menuTID": "navBarMenuWidget_2",
        "componentName": "AlertsExtensionComponent"
    }
   
]

手順

  1. カスタム・コンポーネントを作成します。
    <store-temp>/extensions/features/override-component/src/app/components ディレクトリーに移動して、以下のコマンドを実行します。
    ng g c <componentName> --prefix=isf
  2. 示されているように、値をコンポーネント・クラス名として持つ overrideComponent 静的ストリング変数を追加します。
    ....
    public static overrideComponent = 'AlertsExtensionComponent';
    ....
  3. カスタム・コンポーネント・クラス名を更新します。

    <store-temp>/extensions/features/override-component/src/app ディレクトリーに移動します。 app.module.ts ファイルを開き、 customComponentDeclarations オブジェクト内のカスタム・コンポーネント・クラス名を更新します。

  4. <store-temp>/extensions/features/override-component/src/assets/override-component/config/isf-navbar-extn-config.json ファイルを適切な詳細情報で更新します。 例えば、アプリケーション提供のアラート・コンポーネントをカスタム AlertsExtensionComponentに置き換えるには、以下のように更新します。
    [
        {
            "menuTID": "navBarMenuWidget_2",
            "componentName": "AlertsExtensionComponent"
        }
    
    ]
  5. 変更がナビゲーション・バーに反映されていることを確認します。
    アプリケーション提供の拡張ナビゲーション・バーをローカルで検証するには、以下のコマンドを実行してアプリケーションを開始します。
    yarn start-app

次のタスク

デベロッパーズ・ツールキットでの変更を確認するには、カスタマイズを抽出してデプロイします。 カスタマイズの抽出と展開の詳細については、 カスタマイズの抽出を参照してください。