2013-11-14 2 views
1

Мы переходим от разработки на Java с JSP к подходу AngularJS (rich-client).Каков наилучший способ импорта файлов/шаблонов с помощью Angular JS?

В JSP мы можем использовать шаблон с Apache Tiles, поэтому мы определили общие вещи, такие как меню, верхний и нижний колонтитулы и импортируем всюду.

Я думал о том, чтобы сделать это с JSP/Apache Tiles, но я думаю, что это затруднит мои автоматические тесты с помощью Karma.

EDIT: Мы создаем огромное приложение, у нас будет множество форм/пунктов меню, и мы планируем иметь одно приложение для одной страницы для каждого из них.

ответ

0

Посмотрите на угловые директивы: http://docs.angularjs.org/guide/directive

Имея директиву означает, что вы можете определить что-то вроде этого:

<div class="someContainer"> 
    <div class="menu"></div> 
</div> 

и он превратится в это:

<div class="someContainer"> 
    <ul> 
     <li>Menu Item 1</li> 
     <li>Menu Item 2</li> 
     <li>Menu Item 3</li> 
    </ul> 
</div> 
+0

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

+0

Я знаю, у вас могла бы быть каждая индивидуальная форма директивы. Таким образом, вы можете использовать его на нескольких страницах. –

2

Это зависит от многого.

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

Вы можете написать эти частичные шаблоны в своем любимом шаблоне шаблонов еще раз, пока вы убедитесь, что он будет разобран до того, как он будет доставлен клиенту.

Прочее: просто используйте простой HTML/CSS, используйте привязку для «переменных» и просто используйте директивы ANGULL (ng-class, ng-if и т. Д.), Чтобы стилировать/отображать элементы так, как вы хотите их на основе ваших данные модели. И если вам нужен более сложный материал: просто напишите свои собственные директивы!

0

Angularjs - лучшее решение для одностраничного приложения с толстым клиентом. Все хорошо и хорошо. Убедитесь, что вы потратили некоторое время на разработку своих директив. Эти veidos могут быть чересчур: http://egghead.io/

И его не только директивы. В целом это потрясающе. Вы можете реально масштабировать свое приложение с максимальной эффективностью и поддержкой тестирования.

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