Javascript 动态分配控制器以查看

Javascript 动态分配控制器以查看,javascript,angularjs,Javascript,Angularjs,我在使用AngularJS时有点问题。我实现了一个动态路由,它加载一个主控制器“PagesController”,这个控制器根据url信息加载相应的视图。很好 但我知道我想编译视图并分配一个控制器,而不需要“ng控制器”。因为我不想将视图指定给单个控制器 我的动态路线: app.config( ['$routeProvider', function( $routeProvider ) { $routeProvider .when( '/:page

我在使用AngularJS时有点问题。我实现了一个动态路由,它加载一个主控制器“PagesController”,这个控制器根据url信息加载相应的视图。很好

但我知道我想编译视图并分配一个控制器,而不需要“ng控制器”。因为我不想将视图指定给单个控制器

我的动态路线:

app.config( ['$routeProvider', 
    function( $routeProvider ) {
        $routeProvider
            .when( '/:pagename', { template: 'blank', controller: 'PagesController' })
    }
]);
我的主控制器:

app.controller( 'PagesController', [ '$scope', '$routeParams', '$compile', '$scope',
    function( $scope, $routeParams, $compile, http, $controller, $rootScope ) {

        $http.get( 'app/pth/' + $routeParams.pagename ).then( function ( view ) {

            $( '#views' ).html( $compile( view.data )( $scope ) );
        });

    }] 
);
app.controller( 'TestCtr', [function() {

}]);
<div>
    <h2>Welcome!</h2>
</div>
常规控制员:

app.controller( 'PagesController', [ '$scope', '$routeParams', '$compile', '$scope',
    function( $scope, $routeParams, $compile, http, $controller, $rootScope ) {

        $http.get( 'app/pth/' + $routeParams.pagename ).then( function ( view ) {

            $( '#views' ).html( $compile( view.data )( $scope ) );
        });

    }] 
);
app.controller( 'TestCtr', [function() {

}]);
<div>
    <h2>Welcome!</h2>
</div>
我的看法是:

<div ng-controller="TestCtr" >
    <h2>Welcome!</h2>
</div>

欢迎
I whant(没有ng控制器的相同视图):


欢迎
这是一个简单的示例,但基本上我希望在不久的将来在多个控制器上下文中使用上面的视图。
谢谢大家!

将ng控制器绑定到范围变量或使用ng include。请注意,动态控制器需要一个$destroy处理程序(我对它了解不多,所以我只留下这个参考()。

您想用一个模板使用多个控制器吗?为什么不使用
ng include