我试图用角度更改网址而不重新加载页面。
我遇到了this question,特别是这个答案:
如果您需要更改路径,请在您的.config之后添加 应用文件。然后你可以
$location.path('/sampleurl', false);
来 防止重装app.run(['$route', '$rootScope', '$location', function ($route, $rootScope, $location) { var original = $location.path; $location.path = function (path, reload) { if (reload === false) { var lastRoute = $route.current; var un = $rootScope.$on('$locationChangeSuccess', function () { $route.current = lastRoute; un(); }); } return original.apply($location, [path]); }; }])
然而,当我运行该代码时,我立刻得到一个错误并且控制台读取。
未捕捉错误:[$ injector:unpr] http://errors.angularjs.org/1.6.2/$injector/unpr?p0=%24routeProvider%20%3C-%20%24route
当我点击我读到的链接时,可能错误是因为你不能将$ rootScope传递给除指令或控制器之外的任何东西?有人可以帮我解释发生什么事吗?