更改网址而不重新加载(angularjs //后续问答)

我试图改变角度而不重新加载页面的网址。

我遇到了这个问题,特别是这个答案:

如果您需要更改路径,请在应用程序文件的.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任何东西,但一个指令或控制器? 有人可以帮我解释发生了什么事吗?


你没有安装ngRoute :)

链接地址: http://www.djcxy.com/p/77955.html

上一篇: Changing URL without reloading (angularjs // follow up Q.)

下一篇: prevent $state from reloading