Смена базы href по угловой навигации - PullRequest
0 голосов
/ 05 декабря 2018

При создании моего углового приложения с использованием ng build я предоставил для моего приложения флаг - base-href как foo .Таким образом, URL-адрес для моего приложения выглядит как https://10.10.10.19:8080/foo. Однако я хочу перейти на страницу, на которой вместо URL-адреса есть строка, т. Е. https://10.10.10.19:8080/bar.

Я попытался router.navigateByUrl ('/ bar'), но он создает URL https://10.10.10.19:8080/foo/bar, который не является тем, что я ищу.

Может ли кто-нибудь помочь мне с тем, что здесь отсутствует или идет не так?

Ответы [ 3 ]

0 голосов
/ 05 декабря 2018

Не уверен после сборки, но во время разработки я использую следующий код и он работает для меня ..

this.router.navigate(['../bar'], { relativeTo: this.route });
0 голосов
/ 05 декабря 2018

По сути, вы хотите, чтобы ваш базовый href устанавливался динамически, поскольку вы не можете удалить только базовый href (AFAIK).

Импортировать base_HREF на main.ts

import { APP_BASE_HREF } from '@angular/common';

и установить поставщиковкак показано ниже

providers: [
    {
        provide: APP_BASE_HREF,
        useValue: '/' + (window.location.pathname.split('/')[1] || '')
    }
]

ссылка на эту ссылку: эта ссылка может быть полезной: Angular 2/4/5 - динамически установить базовый href

0 голосов
/ 05 декабря 2018

Это может быть достигнуто путем внедрения зависимости или через httpInterceptors.

Я надеюсь, что приведенная ниже ссылка поможет вашему вопросу.http://www.projectcodify.com/angular-set-base-url-dynamically

...