gpt4 book ai didi

javascript - 可以使用 Angular UI Router 隐藏 URL 中的一些参数吗?

转载 作者:行者123 更新时间:2023-12-03 22:46:38 25 4
gpt4 key购买 nike

我想通过参数将两个值传递给新的 ui-view:

  • 商品编号
  • 对象列表

但是,我希望新 View 仅显示浏览器 URL 中的 id 而不是字符串化的对象数组:

http://www.myapp.com/#/my-view/4

INSTEAD OF

http://www.myapp.com/#/my-view/4?flskdjalfjaewoijoijasdlfkjösldakjföliwejöorijo

是否可以 a) 将隐藏的对象数组传递给 ui-view 或 b) 两者都传递但在浏览器 URL 中隐藏另一个?

我发现了一些关于 squash 参数的信息,但无法让它执行我正在尝试的操作。

这是我的看法:

  $stateProvider
.state('show', {
url: "/show/{itemId}?{itemList}",
views: {
'mainView': {
templateUrl: 'views/itemView.html',
controller: 'showController',
params: {
itemList: {
value: null,
squash: true
},

itemId: -1
}
}
}

如何在不隐藏 id 的情况下隐藏 URL 中的对象列表?

最佳答案

你走在正确的道路上。要隐藏参数,你必须像你一样在 params 中定义它们,没有 squash

您的示例应如下所示:

  $stateProvider
.state('show', {
url: "/show?itemId",
views: {
'mainView': {
templateUrl: 'views/itemView.html',
controller: 'showController'
// params do not work here! They need to be attached below ...
// $stateProvider.state('show', {url:'/show/:url_param',views:{}, params: {}})
}
},
resolve: {},
params: {
itemList: {
value: null
}
}
})

参见示例:http://plnkr.co/edit/wEjwCVWMKTyuSdyLr0og?p=preview

关于javascript - 可以使用 Angular UI Router 隐藏 URL 中的一些参数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37425383/

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