我正在尝试使用requireJS和angularJS配置Web应用程序。我来自牵线木偶配置,我试图在角度(在视图和控制器等概念)中有一个类似的,所以我希望能够将#/ test映射到我的控制器并在控制台中登录一条消息。
我见过Does AngularJS support AMD like RequireJS?和RequireJS and AngularJS,我有点差异,从我的观点来看,我的配置应该有用......但它没有......
这是我的代码:
文件:app.config.js
require.config({
shim: {
angular: {
exports: 'angular'
},
angularRoute: ['angular']
},
paths: {
angular: '../lib/angular',
angularRoute: '../lib/angular-route'
}
});
require(['angular', 'app', 'routes/index'], function (angular) {
angular.bootstrap(document, ['app']);
});
档案:app.js
define(['angular', 'angularRoute'], function (angular) {
//angular.module('app.controllers', []);
var app = angular.module('app', ['ngRoute']);
return app;
});
文件:routes / index.js
define(['angular', 'app', 'controllers/index'], function (angular, app) {
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider.when('/', { templateUrl: require.toUrl('/resources/js/app/templates/test.html'), controller: 'indexController'});
}]);
});
文件:controllers / index.js
define(['angular', 'app'], function (angular, app) {
//var appControllers = angular.module('app.controllers');
app.controller('indexController', ['$scope', function ($scope) {
console.log('cascade...');
}]);
});
我缺少什么?当我访问#/ test时,我在控制台中看不到“cascade”,我应该吗?对吗?
提前致谢。