gpt4 book ai didi

javascript - 使用 Web Api Controller 参数映射 AngularJs 查询字符串

转载 作者:行者123 更新时间:2023-11-28 06:53:57 24 4
gpt4 key购买 nike

这是我的 Angularjs Controller 代码:

app.controller('listAdsController', ['$scope', 'myService', '$routeParams', '$location', function ($scope, myService, $routeParams, $location) {

myService.getAdsByCategory({categoryId : $routeParams.categoryId});
$scope.totalItems = 64;

$scope.pageChanged = function () {
var path = $location.path();
$location.path(path).search('page', $scope.currentPage);
};

$scope.maxSize = 10;
$scope.bigTotalItems = 175;
$scope.currentPage= 1;
$scope.itemsPerPage = 50;
}]);

pageChanged函数中,我尝试使用如下查询字符串根据页码更改我的网址:

//localhost/category/property/4/house-for-rent?page=2

这是我对该 URL 的路由配置:

$routeProvider.when("/category/:category/:categoryId/:urlName", {
controller: "listAdsController",
templateUrl: "app/views/category-ads.html"
});

下面是我的 Web Api 2 Controller :

    [HttpGet]
public IHttpActionResult GetAllByCategory([FromUri] int categoryId, int? page = null)
{
//Code
}

问题是,page参数始终为null,无论我传入什么。你能指导我这里缺少什么吗?

最佳答案

问题很小。我只是将查询字符串传递给 url,但没有从 routeParam 获取它。

解决办法是:

$scope.categoryAds = jetService.getAllByCategory({ categoryId: $routeParams.categoryId, page: $routeParams.page });

您需要从查询字符串中获取page并将其传递给您的服务。

关于javascript - 使用 Web Api Controller 参数映射 AngularJs 查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32725815/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com