Работа с шаблоном Breeze Angular SPA, найденным здесь, http://www.breezejs.com/samples/breezeangular-template. Я пытаюсь обновить меню, которое изменяется после аутентификации пользователя.Обновить изображение MVC после входа в систему с помощью Angular
Мой пример немного отличается от шаблона по умолчанию тем, что я переместил виды входа и регистрации в модальные окна. Когда модальный закрывается после успешного входа в систему, меню, находящееся в представлении MVC (а не в виде углового), не обновляется, так как полное обновление страницы не происходит.
В шаблоне SPA перед входом в SPA требуется аутентификация, затем происходит жесткая переадресация/обновление и загрузка SPA. В моем случае вы можете просматривать просмотры/страницы в SPA до аутентификации.
MVC Просмотр фрагмента кода (Views/Home/Index.cshtml)
...
<li>
@if (@User.Identity.IsAuthenticated)
{
User Logged In: @User.Identity.Name
}
else
{
User Logged In: Annon
}
</li></ul>
<div ng-app="app">
<div ng-view></div>
</div>
....
Я работаю корневой редирект, после входа в систему, жесткие обновления страницы, если json.redirect установлен в '/' , Однако, если его установить на текущую страницу, то есть «#/about», «Угловая» обрабатывает маршрутизацию, и поэтому не происходит жесткого обновления, поэтому меню не обновляется.
Ajax Войти фрагмент кода (App/ajaxlogin.js)
... part of login/register function
if (json.success) {
window.location = json.redirect || location.href;
} else if (json.errors) {
displayErrors($form, json.errors);
}
...
Возможно ли это сделать с помощью моей текущей настройки? Или мне нужно переместить меню где-нибудь в SPA и использовать Angular, чтобы определить, какое меню будет показано? Если последнее, направление в том, как лучше всего это сделать? Я новичок как в Angular, так и в Breeze.
Спасибо @PW Kad. Я работал над тем, чтобы адаптировать шаблон TempHire для Angular, чтобы я был знаком, и рассмотрим, как все это работает. У меня есть приложение, которое работает, заставляя обновление таким же образом (window.location = '/'), но я хочу, чтобы он был бесшовным, так как часть рассуждений для SPA - это жидкостный интерфейс. Из того, что вы предлагаете, в проекте TempHire по-прежнему требуется «жесткое» обновление? – roadsunknown
Да, это то, что они используют. Это было бы более сложным, но вы должны были бы сделать то же самое с жестким освежением, но это было хорошей отправной точкой для меня –