Доброго времени суток! Решил потихоньку начинать осваивать Angular2 и сразу же появился вопрос, на который я еще не нашел вразумительный ответ. Суть в следующем:
В первой версии фреймворка можно было спокойно конструировать non-SPA приложения, когда полностью использовался серверный роутинг и вся разметка рендерилась там же. Что позволяло просто навесить на элемент ng-controller="" и с помощью такого контроллера полностью манипулировать данными и уже отрендеренными элементами.
Как в Angular2 повторить такое не понимаю. Создание компонента обязательно требует template (-url). Поэтому, использование компонента неизбежно приведет к замене отрендеренной разметки, тобишь оно замениться значением из шаблона компонента.
А если я хочу полностью рендерить разметку на сервере, если я не хочу динамически подгружать шаблоны - Angular2 не позволяет этого сделать? :(
Ну второй ангуляр без костылей можно на сервере рендерить.
Также можно сделать корневой компонент с шаблоном <ng-content></ng-content> и селектором 'body'. Хотя да, если нужен только View-слой, то нужно брать соотв. инструмент (react, polymer, etc).
зачем использовать ангулар для non-spa?
К сожалению ничего не могу ответить по вопросу, но ты пойми, каждый роут у тебя по новому инициализирует ануглар приложение, зачем тебе это?
Тотально не правильный подход.
Есть куча других фреймверков для такого.