2016-01-22 19 views
5

是否有可能从js中删除查询字符串中的参数,我已经尝试了下面的一个不幸的是它的工作原理在浏览器控制台中不在JS文件中。从查询字符串中删除参数而不重新加载

var clean_uri = location.protocol + "//" +  location.host+location.pathname; 
window.history.replaceState({}, document.title, clean_uri); 

什么是最好的方式来做到这一点。

+0

如果它在控制台中工作,但不在JS中,那么问题可能与代码有关*围绕*您与我们分享的内容。 – Quentin

+0

你的意思是“不在JS文件中” - 它是从页面调用的外部JS文件吗? – Lys777

回答

1

这只能在浏览器中工作的原因是window.history API仅在浏览器中可用。我不太清楚'来自档案'的意思。但正如其中一位评论者指出的那样,问题出在执行的地方。例如,如果您在Node环境而不是浏览器中执行此操作,则不存在window.history api。节点甚至没有窗口对象。

由于您添加了AngularJs标志,因此应用程序内部的路由可能正在监听对URL的更改并将对其执行操作。 Angular可能有自己的方式允许您更改URL,但我不够熟悉。

相关问题