Есть ли какие-либо недостатки в производительности или отсутствуют ошибки AOT, если МАРШРУТЫ добавлены через фабрику? - PullRequest
0 голосов
/ 24 марта 2020

Я пытаюсь сделать маршрутизацию в своем приложении более чистой и последовательной. Я хочу создать функции, которые будут делать URL-адреса, которые я передаю в routerLink и config маршрутизатора. Но я столкнулся со многими ограничениями компилятора AOT. И я решил предоставить МАРШРУТЫ с useFactory, таким образом маршруты анализируются в время выполнения и без ограничений AOT.

    export function routesFactory(...) {
        return [
            {
                // Such expression is AOT incompatible but it's ok with usefactory
                path: someRouteFn(':userId', ':postId').path,
                component: SomeComponent
            },
            ...
        ]
    }

    providers: [
        {
            provide: ROUTES,
            useFactory: routesFactory,
            useValue: [],
            multi: true
        }
    ],

Итак. Есть ли серьезные недостатки производительности или пропущенные ошибки AOT, если МАРШРУТЫ добавлены через фабрику?

...