我试图在自定义指令中使用ng-view
,但它无效,而且它也没有给我任何控制台错误。
这是我的指示:
(function() {
'use strict';
angular
.module('app')
.directive('header', Header);
Header.$inject = ['USER_AGENT'];
function Header(USER_AGENT) {
return {
restrict: 'A',
templateUrl: 'app/shared/header/header.html',
controller: controller
}
function controller($scope) {
$scope.isMobile = USER_AGENT.isMobile;
}
}
})();
在header.html
文件中,我打电话给ng-view
,就像我在外面打电话一样(当它工作时)。
是否可以将ngView
嵌套在自定义指令中?
答案 0 :(得分:2)
AngularJS在一个应用中不支持多个ng-view
。如果你想要它 - 你必须使用另一个路由引擎,例如Angular UI的ui-router
答案 1 :(得分:0)
即使您可以使用它,也不应该因为不是Angular的正确方法directive
应被视为 web组件,如input
,{{ 1}}等等。
请记住,您的select
只是一个视图,几乎可以被任何东西使用,只是视图
header.html
或(使用ui-router)
.directive('myDirective', function($timeout) {
return {
restrict: 'A',
templateUrl: 'app/shared/header/header.html',
controller: controller
});