LwrRouterConfig

important: To configure a router module with the Router Module Provider, you have to set up both LwrRouterConfig and LwrConfigRouteDefinition.

Syntax

interface LwrRouterConfig {
    basePath?: string;
    caseSensitive?: boolean;
    routes: LwrConfigRouteDefinition[];
    i18n?: I18NRouterConfig;
}

Properties

The LwrRouterConfig object, which is passed to the Router Module Provider, contains the same properties as RouterConfig, which is passed to createRouter().

Property Type Required/Optional Description
basePath String Optional A path prefix applied to all URIs for the router. If no base path is provided, the default value is empty (" ").
caseSensitive Boolean Optional If true, URIs are processed case sensitively. The default value is false.
routes Array Required An array of LwrConfigRouteDefinition objects.
i18n Array Optional An i18n config that may affect the path prefix applied to all URIs. The default value is {locale: 'en-US', defaultLocale: 'en-US'}.

Example

{
    "caseSensitive": "true";        // URIs will be processed case sensitively
    "i18n": {                       // Sets custom locale
        "locale": "es",
        "defaultLocale": "es-MX"
    };
    "routes": [                     // Defines routes for two pages: home and namedPage
        {
            "id": "home",
            "uri": "/",
            "component": "examples/home",
            "page": {
                "type": "home"
            },
            "metadata": {
                "title": "Home"
            }
        },
        {
            "id": "namedPage",
            "uri": "/:pageName",
            "handler": "examples/namedPageHandler",
            "page": {
                "type": "namedPage",
                "attributes": {
                    "pageName": ":pageName"
                }
            }
        }
    ]
}

See Also