Я пытаюсь получить данные, нажав на имя пользователя, чтобы перенаправить пользователя на его странице профиля.
Я пытаюсь сделать это с помощью ng-click, как это:
<p style="font-size:11px; color: grey; " ng-click="seeProfile(gterest);changelocation();"><b>{[{gterest.author}]}</b></p>
Мои две функции контроллера:
$scope.seeProfile = function (gterest) {
console.log(gterest);
var user = gterest.author;
$http.post('/userProfile/', {user: user}).then(function (results) {
console.log(results);
$scope.userProfileList = results.data;
})
};
$scope.changelocation = function () {
$window.location.href = '/userProfile/';
}
Моя функция сервера:
router.post('/', function (req, res) {
var user = req.body.user;
console.log(user);
mongoose.model('Gterest').find({"author": user},function(err, gterests){
if(err) console.log(err);
console.log(gterests)
res.json(gterests);
});
})
И здесь я пытаюсь отобразить данные:
<div ng-controller="allGterest">
<div masonry>
<div class="masonry-brick pinterest" ng-repeat="user in userProfileList">
<img ng-src="{[{user.image}]}" alt="aaa" style="width: 238px;">
<p style="font-size:11px; color: grey; "><b>{[{user.author}]}</b></p>
<p style="margin-top: 5px;" ><b>{[{gterest.title}]}</b></p>
<button class="btn btn-danger btn-xs" style="margin-bottom: 2px;"><span class="glyphicon glyphicon-heart"></span></button>
</div>
</div>
</div>
Это не дает мне никаких erros, но мой экран пуст, я не знаю, что делать.
Пожалуйста, помогите! Спасибо!
РЕДАКТИРОВАТЬ:
Я использую {[{}]} вместо {{}}, потому что я использую руль моего представления, поэтому в моем файле модуля у меня есть
app.config(function ($interpolateProvider) {
$interpolateProvider.startSymbol('{[{').endSymbol('}]}');
});
Похоже, что вы должны использовать
{{your_varibale}}
, а не{[{your_varibale}]}
. Ниже приведен обновленный код.