AngularJS $location.path(‘/’)不清除search()参数

前端之家收集整理的这篇文章主要介绍了AngularJS $location.path(‘/’)不清除search()参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在用

$location.path('/login');

如果用户登录,则重定向登录页面,或者通常使用此方法在任何地方重定向.但是,如果我已经有一个看起来像这样的网址

/注册/最后的步?标记= mF6xY2cQvB9Vccb0J1l5uTu4H10lWkkf

重定向

$location.path( ‘/’);

那么搜索参数不会被清除,所以我得到这样的网址

/?标记= mF6xY2cQvB9Vccb0J1l5uTu4H10lWkkf

即使我使用UI-Router

$state.go('home');

?令牌= mF6xY2cQvB9Vccb0J1l5uTu4H10lWkkf

部分仍在那里.

我不明白.每次我需要去另一个州或网址时,我是否真的需要手动清除参数?这似乎不太好
我是合法的.我做错了什么?我不想做window.location.href,因为这会使整页重新加载,这不是我想做的事情.

我该怎么做才能清除参数?我一定做错了什么.

解决方法

网址之后的部分?被称为搜索(在角度 – 在其他方面它可以被称为查询).你只处理路径,这是?之前的部分.

你可以像这样使用它(是的,它的用途不仅仅是搜索…但在这个上下文中它的名字也是如此).

// Get the current value
var curr_search = $location.search();

// Clear the current search
$location.search({});

// Set the current search values
$location.search({key: "value"});

猜你在找的Angularjs相关文章