Ответ 1
Я занимаюсь исследованиями за последние 3 недели, и многие люди думают об альтернативе после того, как Angular принял радикальный путь изменения. К счастью, у upcomming W3C Web Components стандарт действительно есть все, что нам нужно, и он работает прямо сейчас с polyfills из проекта Polymer. Поэтому, чтобы ответить на вопрос:
- Angular Директивы → Веб-компоненты используйте polyfill пока все браузеры не поддерживают его.
- Angular Модули → Модули ECMA 6 часть проблемы решается с помощью импорта HTML. Но вы также можете использовать Traceur, пока браузеры не поддержат его.
- Angular Маршруты → Есть компонент для этого & trade; используйте
<app-router>
. - Angular двухсторонняя привязка данных → Polymer добавляет "волшебный" слой на верхней части простых стандартных веб-компонентов. Это включает в себя множество функций, включая привязку данных.
+ Plus Подробнее
Если вам интересно о процессе сборки для конкатенации файлов, чтобы уменьшить количество запросов HTTP, посмотрите Addy Osmani post о Vulcanize. Спойлер: вам может не понадобиться это с предстоящей оптимизацией HTTP 2.
Многие проекты Angular используют Twitter Bootstrap для макета. Полимер может сделать это, плюс он отлично играет с Google Элементы бумаги (полностью необязательный, но великолепно удивительный).
Если вы хотите познакомиться с веб-компонентами в целом, вот куча хороших статей: http://webcomponents.org/articles/
И вот множество веб-компонентов: http://customelements.io/ Я не знаю, будет ли это новый NPM, но компоненты списка очень впечатляют и растут.
Это относительно сложно разоблачить API для компонента Angular. Люди придумали всевозможные методы из функции связи в излучающие события. В "Веб-компоненты" , однако, действительно легко, чтобы ваш компонент взаимодействовал с внешним миром и, действительно, API и события, которые вы раскрываете, отличается от стандартных HTML-тегов, таких как <audio>
.
Как и Angular, вы можете использовать Polymer with Дарт.
Заключение
В целом, я не вижу причин использовать Angular, за исключением if:
- У вас огромный объем инвестиций в исходный код в Angular и вы не хотите переносить все в стандартную сеть. (Angular 2.0 в любом случае будет осуждать ваш код, поэтому вы застряли с Angular 1. *)
- Ваша команда слишком ленив, чтобы выучить новую технологию (в этом случае сеть, возможно, не будет подходящей платформой для такого отношения).
Angular был хорош для того, что он делал, и имел свой цикл Hype. Веб-компоненты решают многие проблемы, с которыми пытались обратиться Angular. Вероятно, Angular сыграл роль доказательства концепции для веб-компонентов. Но теперь пришло время двигаться дальше. Интернет изобретает себя каждый день, и это неизбежно для перемещает чей-то сыр.
Я не говорю, что Полимер - окончательный ответ на все. В лучшем случае это еще один Angular, который станет бесполезным через пару лет, но теперь самое время его изучить и использовать. W3C стандарты не умереть легко, хотя и Полимер имеет тенденцию быть намного ближе к их.
Там элемент для этого & trade; - это новый Там приложение для этого & trade;