在关注AngularJS的每个教程中,我看到所有控制器都在一个文件controllers.js中。
我认为,分离文件中的控制器更实用。
问题是:
如何在AngularJS中创建分离的控制器? 如何将控制器CRUD方法放在Controller中(具有这样的结构)?
Controller Users
- method get
- method add
- method edit
- method delete
感谢任何帮助和示例如何。
答案 0 :(得分:1)
我建议这个approch(见下面的例子)
使用Javascript:
// first file, must be include in first in your HTML
var example = angular.module('example', []);
example.factory('IndexModel', function() {
return {
get: function() {
return 'index controller';
}
};
});
example.controller('Index', function($scope, IndexModel) {
$scope.name = IndexModel.get();
});
// other file
var example = angular.module('example'); // angular module is accessible like this
example.factory('UserModel', function() {
return {
get: function() {
return 'user controller';
}
}
});
example.controller('User', function($scope, UserModel) {
$scope.name = UserModel.get();
});
Codepen:http://codepen.io/anon/pen/bAvEl
答案 1 :(得分:0)
angular.module('controllers', []);
在你的角度应用初始化代码上添加它,然后在每个控制器文件中添加如下内容(并且obvs在html中引用脚本文件):
(function() {
angular.module('controllers').controller('UserController', function($scope, $http) {
// your crud methods
$http.get('your-user-rest-url').success(function(result) {
return $scope.user = result;
});
});
}).call(this);