Angularjs - 带有斜杠的$ location.path

时间:2014-11-01 15:24:07

标签: angularjs url path angular-ui-router slash

可以指定$ location.search在url中发送带斜杠的参数吗?

这是我的状态:

.state('home/room', {
                url: '/:home_id/:room_id',
                templateUrl: 'home/layout.html'
            });

使用链接可以很好地运作:

<a ui-sref="home/room({home_id:20, folder_id: 608})"> // I get url: "/20/608" 

是否可以使用$ location.path做同样的事情?

我尝试了这个,但它不起作用。

$location.path("home/room({home_id:20, room_id: 608})")

$location.search({home_id: 20, room_id: 608});

我得到/?home_id=20&room_id=608

但我希望/20/608

我试图避免使用正则表达式。任何的想法 ?感谢

1 个答案:

答案 0 :(得分:3)

您使用的功能特定于angular-ui-router。要使用$location使URL正确,您可以进行字符串连接以构建URL。

$location.path("home/room"+homeId+"/"+roomId);

建议使用$state.go()的angular-ui-router函数在使用angular-ui-router和$stateProvider

时在状态之间进行转换
$state.go('home/room',{home_id:20, folder_id: 608});