我希望能够在不更改状态的情况下更改地址的URL,以防止重新呈现。从我的搜索来看,ui- router
当前没有提供此功能,但从$location.path
丑角提供了。
因此,自然而然地,我想使用$state.get(stateName)
该州的URL,这样就不必手动键入URL。
我有两个问题:
$state.get(stateName)
仅返回相对路径。如何获得绝对路径?举例来说,如果我有一个名为状态user.home.view
有user.home
,我有我的状态定义为
'user': {
abstract: true,
url: '^/users/'
},
'user.home': {
url: ''
},
'user.home.view': {
url: ':id/'
}
因此,现在$state.get(user.home.view).url
返回:id/
。如何获得完整的URL(即/users/5/
)?
您应该使用$state.href()
。
$state.href('user.home.view', {}, {absolute: true});
本文向大家介绍React-Router怎么获取URL的参数?相关面试题,主要包含被问及React-Router怎么获取URL的参数?时的应答技巧和注意事项,需要的朋友参考一下 在之前的版本中,可以通过 this.props.location.query.bar 进行获取 在 v4 中,通过 this.props.location.search 获取,不过需要进行处理
问题内容: 我正在使用ui-router来表示AngularJS应用程序中的状态。在其中,我想更改状态而不更改URL(基本上是“详细视图”已更新,但这不会影响URL)。 我使用的显示细节,但如果我指定像一个URL这仅适用于我。 在我看来,当前状态仅通过URL定义。 问题答案: 感谢您的回答,它确实对正确的方向有所帮助,但是我想添加更完整的描述。 在我的特定问题中,有一个复杂的因素,因为我需要向其注
问题内容: 这可能很简单,但是我在文档中找不到任何内容,因此使用谷歌搜索没有帮助。我正在尝试定义一个状态,在该状态下,我需要在服务器上单击以提取所需数据的URL取决于状态URL参数。简而言之,类似于: 上面的方法不起作用。我尝试注入以获取所需的参数,但是没有运气。什么是正确的方法? 问题答案: 您关系密切。如果使用ui-router,请改用。该代码对我有用:
但是控制台显示一个错误: 未捕获的 DOMException:无法在 “History” 上执行 'pushState':无法克隆 Symbol(react.element)。 这是什么意思?对此我能做些什么?
问题内容: 考虑从ui-router文档获取的以下状态: 以及状态“ state1”的“ partials / state1.html”控制器: 是否有任何内置功能可从控制器内部或模板内部确定控制器/模板与哪个状态关联? 例如: 而且,如果没有内置解决方案,您将如何“装饰” $ state或$ stateParams以包含此信息? 我想出的唯一解决方案是使用$ state.get(),然后使用控制
问题内容: 说我有一个 现在,我需要单击它的状态。我的意思是我需要知道是否单击了它。 问题答案: 您还可以使用itemListener的itemStateChanged方法,如下所示: 并且您想知道后者使用方法的状态