我想更改状态以强制重新加载浏览器窗口,但我需要让 url 最后保留一个 id。
scope.takeAssessment = function (id) {
state.go('app.tab.assessmentsDetails');
};
这是我试图达到的状态,如您所见,我正在传递一个 ID,该 ID 需要放在 url 的末尾以形成如下所示的内容:
assessment/12312312312312 <(数字是 ID)
这是通过 ng-click 调用的。可能有更好的方法来实现我想要的,所以请在下面的评论中让我知道。
最佳答案
当您需要使用 $state.go
将参数传递给状态时,将其作为对象传递,如下所示:
scope.takeAssessment = function (id) {
$state.go('app.tab.assessmentsDetails', { id: id});
};
你也可以使用ui-sref
指令来指定state和params,它会被转换成对应的href
。例如:
<a ui-sref="app.tab.assessmentsDetails({id: id})">Take assessment</a>
详情请引用:https://github.com/angular-ui/ui-router/wiki/URL-Routing#using-parameters-in-links
关于javascript - 你如何通过在 state.go 的末尾连接一个 ID 来改变状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37005673/