未定义路径时,将重定向到Home路由

时间:2015-05-18 11:49:19

标签: asp.net-mvc angularjs

我使用Angular.js路由机制,我想将我的主路由设置为默认路由,这样当我打开应用程序时将使用该默认路由。

示例当我按以下方式打开应用程序时,url是www.abc.com

代码:

var portalModule = angular.module("portalModule", ['ngRoute']).config(function ($routeProvider, $locationProvider) {
    //Path - it should be same as href link
    $routeProvider.when('/Home', { templateUrl: '/PortalTemplate/Home.html', controller: 'homeController' });

    //List routing
    $routeProvider.when('/ProductList', { templateUrl: '/PortalTemplate/ProductList.html', controller: 'productController' });
    $routeProvider.when('/ShopList', { templateUrl: '/PortalTemplate/ShopList.html', controller: 'shopController' });
    $routeProvider.when('/ServiceList', { templateUrl: '/PortalTemplate/ServiceList.html', controller: 'serviceController' });

    //Detail Routing
    $routeProvider.when('/ProductDetail', { templateUrl: '/PortalTemplate/ProductDetail.html', controller: 'productDetailController' });
    $routeProvider.when('/ShopDetail', { templateUrl: '/PortalTemplate/ShopDetail.html', controller: 'shopDetailController' });
    $routeProvider.when('/ServiceDetail', { templateUrl: '/PortalTemplate/ServiceDetail.html', controller: 'serviceDetailController' });

    $locationProvider.html5Mode(true);
});

所以我希望/ Home路由会在我打开应用程序时打开,默认情况下为www.abc.com/Home。

1 个答案:

答案 0 :(得分:1)

您可以使用.otherwise(params);来捕捉其他任何不匹配的内容。请参阅roteProvider docs here

$routeProvider.when(...)
$routeProvider.when(...)
.otherwise({ redirectTo: '/Home' });