AngularJS:高度动态路由

时间:2014-05-16 22:17:34

标签: javascript angularjs templates controllers angularjs-routing

您好,

我目前正在寻求实现这样的目标( AngularJS ):

$routeProvider
    .when('/root/:controllerName/blah/:blahId/blah/:blah', {
        templateUrl: '/tmpl/:controllerName/blah/partials/:blah' + '.html',
        controller: ':controllerName' + 'Ctrl'
    })

这可能过于复杂了('等等,等等,等等),但我想确保它是清楚的。

简而言之,我的目标是完成类似(足够) Microsoft MVC如何使用路由到控制器 - 换句话说,非常自主:

routes.MapRoute(
    "Default",                                              // Route name
    "{controller}/{action}/{id}",                           // URL with parameters
    new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
);

之后,我打算LazyLoad控制器(我已经),但这需要(希望)与LazyLoading兼容。

有没有人使用这种方法取得成功,知道任何资源,或者对如何实现这一点有任何想法?

- PreThanks

1 个答案:

答案 0 :(得分:1)

我认为您无法使用 ngRoute 解决此问题,但我认为 ngInclude 应该可以提供帮助:

Html

<div class="slide-animate-container">
    <div ng-include="template.url"></div>
  </div>

<强>控制器

$scope.template.url = "";//some dynamic rules

以下是有关角度文档的链接:

https://docs.angularjs.org/api/ngRoute/directive/ngView