Angularjs 控制器未注册-如何告知其路径?
我知道我错过了什么,但我不知道怎么做Angularjs 控制器未注册-如何告知其路径?,angularjs,route-provider,Angularjs,Route Provider,我知道我错过了什么,但我不知道怎么做 var appModule = angular.module('app', [ 'ngRoute' ]); appModule.config(function($routeProvider, $locationProvider) { $routeProvider .when('/', { templateUrl : 'components/home/home.html', controller :
var appModule = angular.module('app', [
'ngRoute'
]);
appModule.config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
templateUrl : 'components/home/home.html',
controller : 'homeController',
})
.when('/contact', {
templateUrl : '/components/contact/contact.html',
controller : 'contactController',
})
$locationProvider.html5Mode(true);
});
我通过以下组件构建了angular应用程序:
app -> components -> home -> home.html homeController.js homeService.js
-> contact -> contact.html contactController.js contactService.js
app.js
index.html
在我的app.js中,我使用了常用的方法
var appModule = angular.module('app', [
'ngRoute'
]);
appModule.config(function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
templateUrl : 'components/home/home.html',
controller : 'homeController',
})
.when('/contact', {
templateUrl : '/components/contact/contact.html',
controller : 'contactController',
})
$locationProvider.html5Mode(true);
});
我的问题是找不到每个控制器。
我可以用“templateUrl”定义html路径,但我没有找到任何controllerUrl
感谢分享,如果你知道怎么做:)无需指定控制器路径。只需在index.html文件中引用您的conntroller.js文件。 angular将使用创建控制器的angular模块自动加载控制器 index.html
<body>
<script src="app/components/home/homecontroller.js"></script>
<script src="app/components/contact/contactcontroller.js"></script>
</body>
</html>
您的控制器是什么样子的?AngularJS使用依赖项注入,因此,不需要为控制器提供路由。但是,控制器javascript文件必须包含在html中,并带有一个脚本标记谢谢,我想要一个解决方案,通过引用控制器路径,可以避免在索引中添加include,它的工作原理是这样的,当然,谢谢:)