$ state.go("任何网址,而不只是一个州")

时间:2015-11-27 15:58:22

标签: javascript angularjs angular-ui-router

我想写一些像$state.go("/spheres/{{$stateParams.sphereId}}/mono/view");这样的东西与外部网址而不是州,但这不起作用:(

现在我知道为什么这不起作用,因为$ state需要一个状态,但是有解决方法吗?

我想使用此而不是:

window.location.replace("/spheres" + $stateParams.sphereId + "/mono/view");
window.location.href = "/spheres/" + $stateParams.sphereId + "/mono/view";

是因为我在链接到下一个网址时播放了一个声音,出于某种原因location& href在连接时停止声音。

具有讽刺意味的是,在<a>标签中使用href可以在不停用声音的情况下正常工作,但是我遇到了另一个问题,即无法通过移动设备上的ng-click调用href / ng-href。

1 个答案:

答案 0 :(得分:1)

假设您已使用名为sphereId的参数

定义了状态URL
state: 'spheres.details.mono.view',
url: '/spheres/:sphereId/mono/view'

您可以通过以下方式转到参数化状态:

$state.go('spheres.details.mono.view', { sphereId: $stateParams.sphereId });