只将角度路由器应用到站点的一部分?

时间:2015-11-17 11:07:06

标签: javascript angularjs

使用角度路由器和Kirby CMS构建应用程序并遇到轻微问题。

我只希望将角度路由器应用于站点的某些部分以及其他我希望路由器“退回”的其他部分。

/**
 * Handles all the routes for the app
 */
theApp.config(['$routeProvider','$locationProvider',
    function($routeProvider, $locationProvider) {
        $routeProvider.
            when('/', {
                templateUrl: '/assets/partials/pages/home.html'
            });
        $locationProvider.html5Mode(true);
    }
]);

所以这里的主页选择了路径'/'...页面上有一些链接到网站的其他区域,我想打破这个应用程序...

例如: '/约-US'

但是,一旦加载了应用程序,它就会接管页面上的所有链接。因此'/ about-us'实际上并没有加载..

我该如何解决这个问题?我希望路由器能够识别请求不是一个ang匹​​配并完全重定向浏览器。

1 个答案:

答案 0 :(得分:1)

我用mvc .net完成了这个,但也许它也解决了你的问题。从您输入已声明ng-app和ng-view的索引文件开始,Angular会负责路由。

你可以创建一个视图来声明你的应用程序并从那里转到其他视图,这些视图将使用/#/view.html在ng-view中进行重新绑定,路由将由angular控制,因此,这些视图应该是在routeprovider中声明。然而,对于那些超出角度的视图,您可以像往常一样重定向到它们,并且您将自动留下角度。

建议在ng-view之外实现菜单,并从该菜单的链接使用角度视图的角度网址或其他方法。

我希望你可以将它应用到你的案例中