Каковы основные преимущества библиотеки Java-скриптов Knockout с MVC 3? - PullRequest
5 голосов
/ 23 февраля 2012

Сегодня я изучал библиотеку JavaScript Knockout и ее возможности. Теперь я хочу использовать это с приложениями MVC 3, но каковы преимущества использования этого с MVC 3?

Ответы [ 4 ]

11 голосов
/ 23 февраля 2012

Knockout - это шаблон MVVM , который работает с JavaScript ViewModel. Причина, по которой это хорошо работает с MVC, заключается в том, что сериализация в и из моделей javascript в JSON очень проста.

Кроме того, он будет включен в MVC4. Вот видео создателя Knockout о том, как использовать его для одностраничных приложений в MVC4 (с новой функцией Microsoft Web API):

http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2159

Но на самом деле выгода в том, что MVVM позволяет разрабатывать богатые пользовательские интерфейсы с гораздо меньшим количеством кода (если вы знакомы с Silverlight или WPF MVVM, вы поймете, что я имею в виду).

Учитывая ViewModel из:

var myViewModel = { myValue: 'some text' };

Вам не нужно связывать

$('#textBox').change(function() { myViewModel.myValue = $(this).val(); })

и наоборот

$('#textBox').val(myViewModel.myValue)

повсюду, или специальная обработка кода вычисляемых свойств в вашем представлении в Knockout. Вы можете сделать все это очень хорошим объектно-ориентированным способом.

<input type="text" data-bind="value: myValue" />

И все события подключены.

2 голосов
/ 23 февраля 2012

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

И для меня действительно классная мысль - это привязка через наблюдаемые ...

http://knockoutjs.com/documentation/observables.html

Также проверьте это: MVC + Knockoutjs= MVVM на стороне клиента блаженство http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2378

1 голос
/ 23 февраля 2012

Преимущества перечислены здесь - http://knockoutjs.com/documentation/introduction.html

0 голосов
/ 09 декабря 2015

Преимуществ много, несколько выдающихся функций выделены ниже:

  • Возможность подключения в любое время с элементами пользовательского интерфейса в модели данных.
  • С легкостью создавайте сложные и динамические модели данных.
  • Привязка данных помогает манипулировать сохраненными данными, отображать их в пользовательском интерфейсе и обновлять пользовательский интерфейс с помощью регулярных внутренних изменений, если таковые имеются.
  • Поддерживает модель программирования на основе событий и предлагает 100% настройку.
  • Поддерживает IE, Firefox, Safari, Bing, Chrome и многие другие основные потоковые браузеры.
  • Помогает избежать раздувания HTTP-диалога с логикой представления и представлением разметки на сервере.
  • Он обеспечивает применение бизнес-правил, безопасность данных и дополнительный контроль на веб-странице.
  • Он также предлагает ссылочную целостность и множество функций проверки в отношении рабочего процесса для дополнительной безопасности.
  • Knockoutjs предлагают выдающуюся расширяемость.Он имеет множество точек расширения и утилит для создания приложения.

Подробнее вы можете прочитать здесь из нашей статьи https://cynere.com/advantages-of-knockoutjs

...