Подтвердить что ты не робот

Действительно ли стоит смешать AngularJS и KendoUI?

Недавно, работая с AngularJS, мне очень нравятся многие функции, такие как создание пользовательских абстрактных фабрик данных и т.д.

KendoUI также имеет аналогичные функции, такие как MVVM, SPA-маршруты и т.д., которые предлагает AngularJS, поэтому мне интересно, какие преимущества имеют смешение двух (кроме богатых возможностей пользовательского интерфейса KendoUI)?

- Обновление -

Я задаю этот вопрос для разъяснения, а для тех, кто может слегка запутаться в преимуществах каждого, и почему один из них будет использоваться как в проекте, так и не как другой.

Например, возможности модульного тестирования Javascript (просто выполняются с помощью контроллеров Angular, но не видели, чтобы кто-то делал это с KendoUI).

Кажется, что Kendo пытается это сделать, но лучше всего работает в UI.

Спасибо.

- Обновление -

С момента написания этого вопроса я прошел и интегрировал сетку KendoUI с помощью Angular с помощью OData и написал здесь www.whatsinyourlunch.com о том, как это сделать, в надежде, что это будет полезно для других.

Стек - это угловыеJS, KendoUI, OData, WebAPI2,.Net MVC5, С#, Entity Framework, доступ к которым осуществляется через общий репозиторий.

4b9b3361

Ответ 1

Я знаю, что это старый, но вот мои два цента. Чем больше вы используете Angular, тем больше вы осознаете, что вам не нужен Kendo. Интеграция Kendo/Angular - это немного взломать, но, похоже, она выполняет свою работу. Единственная причина, по которой я нахожу использовать Kendo, - это сетка. Я пробовал сетки Angular там, и они пронизаны ошибками и проблемами форматирования.

Я считаю важным не быть пуристом и просто использовать любую комбинацию инструментов, которые достигают того, что вам нужно. Я стараюсь уйти от зависимости от платных коммерческих библиотек, но сетка просто прочная. Любой платный продукт, вероятно, будет иметь большую поддержку и поддержку, а также личный доступ к команде разработчиков (по сравнению с ухоженными бесплатными продуктами от крупных компаний или отдельными проектами разработчиков, которые не нужны). Я видел, как многие прекрасные бесплатные продукты заброшены. Однако, если вы хотите получить большую бесплатную сетку и не можете заплатить Telerik за 1000 долларов за просто сетку, DataTables.net - отличная альтернатива и то, что я сейчас использую.

Вы должны любить поддержку Telerik, которая является наилучшей причиной для использования их материалов на мой взгляд. Им не хватает некоторых вещей в Кендо, как хороший календарь диапазона дат, облако тегов и т.д. Графики также отсутствуют, как говорят Highcharts. Я использую календарь диапазона дат из Кит Вуд, хотя он, похоже, не отвечает на электронные письма. Я нашел отличные элементы управления Angular для других вещей, таких как выпадающие списки и т.д. Раньше я не понимал, почему люди используют хижину, но это лучший инструмент для работы, которая важна.

Ответ 2

Я лично не пойду дальше, чем использовать богатые возможности пользовательского интерфейса KendoUI в директивах Angular. Остальное должно быть Angular. Или используйте KendoUI исключительно.

Ответ 3

Смешивание их отлично работает. Вам не нужно использовать весь код рамки (MVVM и т.д.), Включенный в Kendo, и можете просто сосредоточиться на богатых пользовательских интерфейсах. Мы используем несколько своих элементов управления, включая высоко настраиваемую версию сетки. Angular идеально подходит для этого, потому что мы создали директивы для обертывания элементов управления Kendo и инкапсулировали 80% -ную конфигурацию, которая происходит каждый раз, чтобы разработчик мог сосредоточиться на 20%, которые различаются в их странице/модуле/независимо. Наш проект успешно охватывает более 20 разработчиков в распределенной команде по проекту с десятками тысяч строк кода, и мы добились больших успехов, используя функции пользовательского интерфейса Kendo с Angular.

Ответ 4

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

Kendo предоставляет собственную kendo- angular library, которая содержит директивы для большинства своих виджетов.

Ответ 5

Вот несколько моментов моего опыта, который не способствует смешиванию KendoUI с AngularJs:

  • Несмотря на то, что для AngularJs существуют директивы kendo, многие элементы , связанные с пользовательским интерфейсом, попадут в контроллер (конфигурация, события, сложные шаблоны), и из-за этого трудно сохранить jQuery.
  • Инициализация и отображение компонентов кендо добавляет серьезную временную задержку к каждой странице (сетка, вкладка,...)
  • Аргументы событий и методов не являются когерентными в рамках кендо (т.е. выбирают метод grid vs listview vs combobox)
  • Использование шаблонов с сеткой (или списком) или реагирование на события сетки не похоже на AngularJs.
  • Компоненты ведут себя иначе, чем собственные средства управления, которые они пытаются заменить (например, порядок событий и привязка данных к combobox vs native select)
  • Как только внешний вид компонентов kendo должен быть настроен, нужно ознакомиться с классами CSS, используемыми kendo.

Сеть KendoUI великолепна, но если проект ей не нужен, ничего не получится, смешав два.

Ответ 6

Я думаю, что смешивание их не является хорошим подходом. вы должны задать себе вопрос: "ведьма более необходима и полезна в моем проекте"

Я решил использовать kendo рядом с angular из-за его богатых компонентов сетки. Но я отменил его.

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

Но для других элементов управления kendo у нас меньше проблем.