我正在使用WP Rest API创建一个Ionic应用程序。我已经返回了帖子数据,但我还希望获得类别名称。帖子的JSON数据仅包含类别ID。我正在尝试访问类别ID并在我的控制器中引用它以获取类别数据,以便通过ID获取类别名称。
My controller looks like this:
svampeApp.controller('PostCtrl', function ($scope, svampeApi, $stateParams) {
//Individual Post Controller
console.log("$stateParams", $stateParams);
$scope.posts = [];
$scope.categoryId = [];
$scope.id = $stateParams.id;
svampeApi.getPostData($scope.id).then(function (succ) {
$scope.posts = succ;
$scope.categoryId = succ.categories;
}, function(err) {
console.log('Error: ', err);
});
console.log("Category Object", $scope.categoryId);
//Getting the category ID to display the category name
$scope.categories = [];
svampeApi.getCategoryData($scope.categoryId).then(function (succ) {
$scope.categories = succ;
}, function(err) {
console.log('Error: ', err);
});
});
有了这一行,我应该得到类别ID,因为它存储在Post对象中:
$scope.categoryId = succ.categories;
但是,当我使用ID对类别名称进行第二次api调用时,出现错误。
svampeApi.getCategoryData($scope.categoryId).then(function (succ) {
$scope.categories = succ;
}, function(err) {
console.log('Error: ', err);
});
如何在作用域中保存单个帖子的类别ID,以便我可以在第二次api通话中访问它?这些类别包括我想通过以下方式访问的类别名称:
<p>
{{categories.name}}
</p>
类别对象为空:
Category Object []
我希望你能帮助我。
答案 0 :(得分:1)
请澄清:您是从服务器获取类别名称还是从第一次服务器调用(包括类别ID)嵌入JSON?我没有看到任何REST / Ajax调用。注意:您的服务器调用是异步的,因此在保证类别ID服务器调用完成之前,您无法调用从服务器获取类别名称。这意味着你需要将你的承诺联系起来。