Шаблон на стороне клиента с просмотром на роль

Я читал оAngularJS и это кажется очень многообещающим, единственное, что я пытаюсь выяснить, не только для фреймворка, но и для шаблона на стороне клиента.

Допустим, у вас есть веб-приложение с несколькими ролями, каждая роль может содержать функцию добавления ,, поэтому вы не можете иметь разные шаблоны для каждой роли, что будет считаться плохой практикой, поэтому мой вопрос заключается в том, каков наилучший подход для использования на стороне клиента. шаблон в то же время, не подвергая ваш шаблон для клиента, так, например, вAngularJS Я не должен использоватьng-show? Какой лучший инструмент для создания шаблона на стороне сервера?

 Narretz21 окт. 2012 г., 23:10
Просто интересно ... может быть, вы могли бы повторить набор доступных элементов в области, которые были определены на стороне сервера в зависимости от роли
 McGarnagle21 окт. 2012 г., 10:13
Почему вы не можете иметь разные шаблоны для каждой роли?
 mabuzer21 окт. 2012 г., 10:18
@dbaseman, например, я работаю над продуктом EHR (Electronic Health Record), врач может просматривать всю информацию о пациенте, начиная с подробной личной информации и заканчивая аллергией, лекарствами и т. д., где медсестра, возможно, должна была ограничить просмотр основных информация и аллергии, например, но, как вы видите, оба имеют общее, ,, если вы изменили что-то в аллергии, вы должны перейти к каждому виду и обновить его, что будет считаться плохой практикой и тратой времени ,,,

Ответы на вопрос(2)

а затем соответственно отобразить в Angular. ng-show и ng-hide просто переключают отображение элементов, которые все еще существуют в DOM. Другими словами, эти (я предполагаю) данные, защищенные HIPAA, просто сидят там, где любой может «просмотреть источник» их.

Даже если тысделал придумать способ прямого удаления тех элементов DOM, которые вы не хотите отображать, на основе ролей, это не имеет значения, потому что вы все еще технически передали эти данные клиенту, а опытный злоумышленник просто фыркнет пакеты и получить защищенные данные.

Фактически, ВСЕ ваши проверки безопасности и ролей должны выполняться на сервере. Вы не можете доверять приложению JavaScript, чтобы сделать это на клиенте вообще, в любой среде JS, Angular или нет.

Что касается сокрытия полей на основе роли (возможно, потому что у вас нет данных для отображения в этих полях), ng-show или ng-hide будут вашими друзьями. Иногда NG-переключатель будет делать. Если у вас возникла ситуация, когда по какой-то причине вам нужен совершенно другой шаблон, я бы использовал ng-switch с настраиваемыми директивами в каждом случае, что позволило бы вам шаблонировать то, что было под каждой ролью.

Надеюсь, это поможет.

 Ben Lesh22 окт. 2012 г., 14:58
Я не хотел делать никаких предположений. Я просто хотел убедиться, что важные базы были покрыты. ;)
 mabuzer22 окт. 2012 г., 08:19
спасибо @blesh, но имейте в виду, я никогда не говорил, что буду передавать данные на сторону клиента, я даже пытаюсь показать шаблоны для клиента, что ему больше ничего не разрешено видеть ,,,
Решение Вопроса

с соответствующей ролью на стороне сервера, но похоже, что вы хотите повторно использовать части своего клиентского интерфейса.

В AngularJS вы можете использоватьng-include и создать разные партиалы для разных частей данных. Таким образом, вы могли бы написать что-то вроде этого в ваших взглядах "доктора" и "медсестры":

<div ng-include="'allergies.html'"></div>

И затем есть отдельный файл HTML под названиемallergies.html:

<p>Allergy info: {{someData}}</p>

Другим вариантом будет использование директив.

Ваш ответ на вопрос