Angular - 如何使用$state访问多个 url 参数

Angular - how to access multiple url parameters using $state

本文关键字:url 参数 访问 state 何使用 Angular      更新时间:2023-09-26

我在角度路由中有以下状态:

.state("supplier/document", {
            url: "/supplier/document/:supplierid/:docid",
            controller: "ctrlSupplierDocument",
            templateUrl: "views/supplier/document.html"})

我使用以下代码进入此状态:

$state.go('supplier/document', { 'supplierid': $scope.supplierid, 'docid': item.QualificationID });

这导致我正确转到有问题的视图,其 url 格式按预期:

http://localhost:60437/index.html#/supplier/document/14/70

我现在需要从 url 中获取两个 ID(14 是供应商 ID,70 是文档 ID)。 但是$state.params是未定义的(显然它不认为这些是GET参数)。 通常,使用一个参数 $state.param.id 就可以正常工作。 这里的区别在于两个参数。

问。如何获取这些参数? 或者是否有另一种方法可以实现此目的,我可以在目标视图控制器上使用 $state.params?

谢谢!

尝试:$state.current.params.supplierid$state.current.params.docid

请参阅:http://angular-ui.github.io/ui-router/site/#/api/ui.router.state.$state