Javascript 从angularjs控制器替换url栏中的现有url

Javascript 从angularjs控制器替换url栏中的现有url,javascript,angularjs,Javascript,Angularjs,我有代码来替换浏览器地址栏中的url。在替换url之前,将显示一个警报以指示更改。单击警报对话框后,url将更改回原始url。如何从angularjs控制器更改地址栏中的url,以使更改持续 以下是我的尝试: $scope.goToDashboard = function () { window.history.replaceState("data", "Dashboard", "/dashboard"); // on reaching here the url bar is /

我有代码来替换浏览器地址栏中的url。在替换url之前,将显示一个警报以指示更改。单击警报对话框后,url将更改回原始url。如何从angularjs控制器更改地址栏中的url,以使更改持续

以下是我的尝试:

$scope.goToDashboard = function () {
    window.history.replaceState("data", "Dashboard", "/dashboard");
    // on reaching here the url bar is /dashboard and on clicking it, it returns to the previous url
    alert("here...2");
    $scope.show = true;
}

如何使用新字符串永久重写url?

上述解决方案应该可以工作,但如果您认为要顺利工作,可能需要手动运行摘要周期

相反,我建议您使用
$location
API,通过角度的方式来实现这一点

$location.url('/dashboard').replace();
$location.url('/dashboard')