Динамическое изменение TeplateUrl - PullRequest
0 голосов
/ 14 января 2019

Я пытаюсь сделать templateUrl динамически, но, похоже, возвращается Строка URL в пользовательском интерфейсе.

Вот мой код

@Component({
  selector: 'app-login',
  templateUrl: '../login/'+Setting.URL+'/login.html',
  // templateUrl: '../login/web/login.html',
  styleUrls: ['./login.component.scss']
});

Проблема в том, что URL шаблона не читает местоположение файла html.

1 Ответ

0 голосов
/ 14 января 2019

Правильный подход к динамическому URL - это глубокая ссылка , использующая всегда один и тот же HTML-шаблон, но с другой информацией.

В вашем роутере:

const routes: Routes = [
  {
    path: 'login/:name',
    component: LoginComponent,
  }
];
...
RouterModule.forRoot(routes, {useHash: true})

В вашем компоненте:

@Component({
  selector: 'app-login',
  templateUrl: '../login/web/login.html',
  styleUrls: ['./login.component.scss']
});

constructor(
  private route: ActivatedRoute,
) {
  this.route.params.subscribe((params) => {
    console.log(params.name);
  });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...