我有一个index.html:
<body ng-app="app">
<topmenu></topmenu>
<div ng-view=""></div>
然后在views
文件夹中main.html
和topmenu.html
有一条路线:
.when('/', {
templateUrl: 'views/main.html',
controller: 'MainCtrl'
})
和指令
var App = angular.module('app', []);
App.directive('topmenu', function () {
return {
replace: true,
restrict: 'E',
templateUrl: 'views/topmenu.html'
};
});
问题是,当我添加directive.js
文件并放置<topmenu></topmenu>
标记时,main.html
不再加载
任何想法?
答案 0 :(得分:2)
在您的指令文件中,您不需要再次使用您的模块和依赖项初始化变量。所以这个:
var App = angular.module('app', []);
应该从该文件中删除。
答案 1 :(得分:1)
在directive.js
中删除它,它将创建一个名为&#39; app&#39;
的新角度模块var App = angular.module('app', []);
如果你想从角度获取模块,你可以做
var App2 = angular.module('app');
console.log(App === App2) // true
并确保您已经创建了自己的应用程序&#39;加载directive.js之前的模块,
例如,如果你有2个JS文件
<script src="index.js"/>
<script src="directive.js"/>
index.js中的
var App = angular.module('app', []);