2013-04-02 4 views
3

Я потратил почти целый день на изучение возможностей использования SPA с MVC 4. Я пришел к шаблону после шаблона и рамки JS после фреймворка. Люди используют Knockout, Backbone.js, Breeze.js и так много других фреймворков. Также кажется, что многие люди используют MVVM для отображения данных.MVC 4 SPA без каркасов JS?

Но я действительно искал, если есть способ разработать SPA, который делает не зависит от нескольких фреймворков JS, чтобы заставить его работать. Есть ли минимальная настройка, в которой используется минимальное количество плагинов и фреймворков для работы в SPA? Я заметил, что мы могли бы использовать только History.js, но тогда нам понадобится какая-то абстракция маршрутизации, правильно? Итак, что, если мы просто хотим настроить упрощенную маршрутизацию (управление историей браузера), а не MVVM? Есть ли варианты для этого?

(пожалуйста, дайте мне знать, если я могу фраза на мой вопрос или лучше, если я могу улучшить его)

ответ

1

Вы можете настроить sammy.js или history.js на странице загрузки и загрузки динамически открывается вид ...

sammy.get('#/(.*)', function (context) { 
     var url = this.params['splat']; 
     $("#main").load(url); 
}); 

например, если мы загружаем localhost: 333/Home/ContactUs ... Он будет читать информацию о контакте и загрузке содержимого динамически.

Другие библиотеки, которые вы можете сравнить, если хотите выбрать js framework для SPA. Я думаю, что угловой охватывает все требования к СПА, как единую библиотеку. http://blog.stevensanderson.com/2012/08/01/rich-javascript-applications-the-seven-frameworks-throne-of-js-2012/

+0

Отлично, спасибо за ваш отзыв! Теперь еще одна вещь, которую меня смутили, связанные с MVC 4. Поэтому я понимаю, что могу нажать ссылку на странице для динамической загрузки представления (она показывает localhost: 333/Home/ContactUs в URL-адресе, но загружает вид через AJAX). Но как насчет настройки MVC 4, поэтому, когда кто-то просматривает localhost: 333/Home/ContactUs напрямую, он не подходит только к этому PartialView? Как вы можете легко работать с MVC 4 и sammy.js или history.js? –

+1

Вы должны настроить sammy или history.js ... Я использую sammy.js, это очень хорошо, и когда вы его настроите, вам будет ясно, что многое будет для вас. Когда кто-то откроет его прямо, то определенно он откроет частичный вид, но вы можете проверить в контроллере, является ли его запрос ajax или нет ... Sammy.js работает с базовым URL-адресом хэша, вы можете определить разные маршруты и выполнить действия –

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

  • Нет связанных вопросов^_^