如何在AngularJS SPA中提供index.html后立即有条件地重定向?

时间:2018-05-07 17:05:17

标签: angularjs asp.net-mvc single-page-application

当您点击根目录时,我们有一个使用Asp.net MVC提供index.html文件的站点,然后将AngularJS 1.2.4用作单页面应用程序。我需要为SPA服务,但希望立即重定向到路线。基本上,用户将点击电子邮件中的链接,我需要将它们发送到该路线。

以这种方式提供Index.html:

    [AllowAnonymous]
    public ActionResult Index()
    {
        CachingUtility.SetNoCache(Response);
        var path = "index.html";
        if (Convert.ToBoolean(ConfigurationManager.AppSettings["UseDist"]))
        {
            path = "dist/index.html";
        }
        return File(path, "text/html");
    }

从这里AngularJS $ routeProvider接管:

...
 .config(['$routeProvider', function ($routeProvider) {
    $routeProvider.otherwise({ redirectTo: '/home' });
 }])
 ...
 .config(['$routeProvider', function ($routeProvider) {
    $routeProvider.when('/products', {
        templateUrl: '/application/app/product/products.html',
        controller: 'ProductsCtrl'
 });
 ... etc,

我可以通过不同的方式提供index.html,或者我可以用路由器来实现这一目标吗?我正试图避免为这几条路线提供全新的SPA。

0 个答案:

没有答案