TL; DR
Каковы наилучшие практики при использовании просмотров .NET Razor и AngularJS?Razor templates, views and angular.js
Контекст
Мы разрабатываем общедоступный веб-сайт (не интранет), используя mvc4 с бритвой, и мы не были очень хорошо знакомы с клиентским скриптом, поэтому мы начали с того, что мы знали: JQuery. Но теперь все усложняется, и мы хотели бы переключиться на AngularJS.
В части .NET мы используем шаблоны Razor и UIHintAttribute
(плюс некоторые пользовательские) для рендеринга правильного html-элемента управления. Мы также добавляем пользовательские атрибуты html, чтобы предоставить дополнительную информацию части jQuery (например, title
для всплывающей подсказки ....)
Итак, мы уже используем декларативный способ настройки поведения пользовательского интерфейса, поэтому AngularJS кажется хорошим вариантом ,
Вопросы
Поскольку мы уже модели определены на стороне сервера, а с AngularJS также использует модель, не будет заставлять нас дублировать код?
Как мы имеем дело с функцией привязки данных, так как мы уже делаем некоторую привязывающую сторону сервера (в представлениях). Должны ли мы сделать полностью асинхронное приложение, заставляя AJAX звонить из AngularJS для загрузки данных или мы можем смешать оба?
Что-нибудь еще, о чем мы должны знать при попытке использовать обе эти технологии?
Я провел некоторое исследование в Google, но я не могу найти подробные способы смешивания просмотров и шаблонов Razor с помощью AngularJS ... Возможно, это просто нехорошо делать?
Спасибо за ваш ответ! Извините, мне потребовалось довольно много времени, чтобы это увидеть. То, что вы говорите, это то, чего я боялся, поэтому мы, наконец, не будем использовать angularJS ... Кажется, это отличная технология, но я не хочу писать большую часть кода моего сайта в javascript. Также мне кажется, что угловой подход более подходит для сложных веб-приложений, чем для общедоступного веб-сайта. Возможно, на некоторых участках мы будем использовать его, но он будет очень локализован. Еще раз спасибо за ваш ответ – ppetrov