2015-12-09 36 views
0

我使用Angular的ui路由器在Angular中创建了一个路径。问题是,只有在Chrome中,当我去:在Chrome中删除角URL参数

http://localhost:9000/#/test-app/app/123

浏览器中删除我的参数,并带我到http://localhost:9000/#/test-app/app 这不会在任何其他浏览器发生。我需要在我的解析语句中使用参数。

我只需要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

尝试:

.state('root.user-by-id', { 
    url: '/test-app/app/:id', 

实际路由前斜线可能会造成麻烦

+0

没有运气,它只是射我回根。 –

+0

还更新指向“/ test-app/app/foo”的链接 –

0

编辑:对不起,我最初误解了问题。

我很担心你的路线没有前面的“/”。我期望您的网址定义将沿线︰

url: '/test-app/app/:id' 

你能张贴您的类似路线吗?尝试评估URL和状态时,您的客户端可能会错误地匹配不正确/无效的路由。

+0

我只需要http:// localhost:9000 /#/ test-app/app/123中的123 –