我使用Angular的ui-router在Angular中创建了一个路径。问题是,当我去的时候,只有铬,
http://localhost:9000/#/test-app/app/123
Chrome删除了我的参数并转到http://localhost:9000/#/test-app/app 这在任何其他浏览器中都不会发生。我需要在我的resolve语句中使用该参数。
我只需要123来自:id。 Chrome没有给我,但safari和firefox都可以。 Chrome仅在隐身模式下有效。
.state('root.user-by-id', {
url: 'test-app/app/:id',
templateUrl: 'template.html',
controller: 'DetailViewCtrl',
controllerAs: 'detail',
resolve: {
puzzleById: function($stateParams, userAPI) {
return userAPI.getUserByID($stateParams.id)
}
}
})
答案 0 :(得分:0)
尝试:
.state('root.user-by-id', {
url: '/test-app/app/:id',
实际路由之前的斜线可能会导致问题
答案 1 :(得分:0)
我担心你的路线没有前面的" /"。我希望您的网址定义符合以下内容:
url: '/test-app/app/:id'
你能发布类似的路线吗?在尝试评估URL和状态时,您的客户端可能会错误地匹配错误/无效路由。