Таким образом, я могу показать имя пользователя через локальный паспорт мангуста в моем успешном перенаправлении:
app.get('/profile', isLoggedIn, function (req, res) {
res.render('profile.html', {
user: req.user
});
console.log(req.user.local.username) //correct username for the session
});
... и затем используйте его для отображения в profile.html:
<p><%= user.local.username %></p>
... но при попытке отобразить то же самое в моем ng-view:
<div ng-view ng-class="slide" class="slider"></div>
... через мой шаблон маршрута example.html:
<p>welcome <%= user.local.username %></p>
..отображается как видно: не правильное имя пользователя...
Нельзя ли включить эту информацию в ngView? Есть ли решение включить эту информацию в мой шаблон? Я попытался настроить фабрику с помощью $http:
angular.module('userService', [])
.factory('Users', function($http) {
return {
get : function() {
return $http.get('/profile');
}
}
});
... но он возвращал весь html, так что это не правильное решение.
Любое руководство, как всегда, приветствуется и ценится, поэтому заранее спасибо!
Редактировать в ответ: Получение значения и его маршрутизация на самом деле не проблема. Проблема заключается в том, чтобы заставить его правильно отображаться в ngView.
вот мой обновленный код:
Rules.get()
.success(function (data) {
$scope.rules = data;
console.log('Rules.get()');
console.log(data);
Users.get()
.success(function (username) {
Users.username = username;
console.log('Users.get()')
console.log(username)
});
});
...а также...
angular.module('userService', [])
.factory('Users', function ($http) {
return {
get: function () {
console.log('userService')
return $http.get('/profile/user');
}
}
});
... который возвращается из:
app.get('/profile/user', function (req, res) {
console.log('profile/user')
console.log(req.user.local.username)
res.json(req.user.local.username);
});
Это дает мне то же самое и правильное имя пользователя, но, увы, как мне его назвать, чтобы оно отображалось в ngView? Если он размещен за пределами фактического div ngView, он отображается нормально.
Из приведенного выше {{username}} {{rules.username}} = ничего. Каким должно быть имя параметра службы в шаблоне ngView (который, как я предполагаю, является совершенно новой $scope)?