0

Есть ли способ указать шаблон, который будет подключен к компоненту в маршруте в Angular 2?Anguar2 Route предоставить шаблон для компонента

У меня есть компонент, в котором функциональность контроллера идентична над тремя видами. То, что я хотел бы сделать, это иметь три адреса с одним и тем же компонентом, но с тремя разными html-файлами. В идеале я бы предоставил в маршруте templateUrl или template: require(... синтаксис, который предоставил бы файл шаблона компоненту.

+0

Используйте '* ngIf' или' * ngSwitch' для отображения разных частей одного и того же компонента. Вы теряете преимущество компиляции шаблонов в автономном режиме, если динамически создавать компоненты во время выполнения. –

+0

Это позор. Я рад зарегистрировать шаблоны во время компиляции, но хочу выбрать, какой из них используется в маршруте. Я действительно не хочу иметь массивный html-файл со всеми тремя представлениями. – Stu

+1

Я только что использовал инъецируемую службу, которая выполняет фактическую работу в компоненте, а затем написала пару свойств и метод, который просто передает значения до службы. Это не идеально, но лучшее, что я мог придумать. – Stu

ответ

0

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

Это прекрасно работает, и мой код функциональности написан только один раз, но у меня есть три (правда, очень тонких) идентичных класса, что является позором.

Смежные вопросы