Я использую AngularJS в своем приложении MVC и пытаюсь использовать лучшее из обоих миров. Мне очень нравится, как вы можете в MVC настроить логику проверки в моделях viewmodels и произвести проверку на стороне клиента с помощью проверки jQuery в ваших представлениях бритвы без особых усилий. Я использую AngularJS, чтобы получить поведение SPA с маршрутизацией и т.д., но когда я создаю вид бритвы, которые я использую, чтобы впрыснуть на страницу с: <div data-ng-view="data-ng-view"></div>
Использование просмотров бритвы с проверкой jQuery с помощью angularJS
затем проверка JQuery перестает работать, даже если эти файлы скрипт ссылка на страница, на которой вводится представление. Ниже мой взгляд бритвы:
@model BandViewModel
<div data-ng-controller="App.BandCreateCtrl">
<form name="startBandForm">
@Html.ValidationSummary(true)
<br />
@Html.LabelFor(m => m.Name)
@Html.TextBoxFor(m => m.Name, new { data_ng_model = "band.Name" })
@Html.ValidationMessageFor(m => m.Name)
<br/>
<input data-ng-disabled="startBandForm.$invalid" type="submit" data-ng-click="createBand(band)" value="Create"/>
</form>
</div>
Как я боялся ... спасибо за отличный ответ :) Я отвечу на ваши отзывы. – Arnstein
Я лично считаю, что с точки зрения Razor могут быть полезными. Вы могли бы, например, поместить место @ Html.TextBoxFor (m => m.Name), и оно будет генерировать поле ввода с полномочиями AngularJS со всеми его ng-образными, ng-требуемыми и многими другими атрибутами, которые подвержены ошибкам вручную. Причина использования ASP.NET MVC может быть чрезмерной, но вы можете использовать веб-страницы с синтаксисом Razor (.cshtml) из контекста MVC, проект вообще не будет ссылаться на ASP.NET MVC. Взгляните на следующие проекты для примеров: http://github.com/kriasoft/angular-vs http://github.com/kriasoft/site-sdk –
Я полностью не согласен. Я использую шаблоны Razor * очень * успешно с Angular, и у меня есть все мои типичные шаблоны клиентских сторон, которые вы не получили бы с простой HTML-страницей. Правда, шаблон OP не будет работать, но если вы создадите свой собственный HtmlHelpers для работы с Angular, вы будете золотыми! –