はい、anglejsファイルを区切り、ページごとに1つのangularjsコントローラを使用できますが、コントローラまたはサービスのモジュール名は、角括弧[]内のメインモジュール(app.js)に登録する必要があります。
//app.js
var app = angular.module('myApp', ['ngRoute','myApp.controller','myApp.create.controller'])
.config(function ($routeProvider,$locationProvider) {
$routeProvider
.when("/", {
templateUrl: 'home/home.html',
controller: 'HomeController',
controllerAs: 'home'
}).when("/create",{
templateUrl: 'manage/create.html',
controller: 'CreateController',
controllerAs: 'create'
})
});
//HomeController.js
var module = angular.module('myApp.controller', ['myApp.service']);
module.controller('HomeController', ['HomeService',
function (HomeService) {
var self = this;
self.EmpData = [];
HomeService.getAllEmployeesTable().then(onSuccess, onError);
function onSuccess(response) {
self.EmpData = response.data;
}
function onError(error) {
alert('Error fetching data');
}
}]);
//CreateController.js
var module = angular.module('myApp.create.controller',['myApp.create.service']);
module.controller('CreateController',['CreateService',
function(CreateService){
var self =this;
self.person = {
name : "", email:"",address:"",telephone:""
}
self.submitPerson = function(){
console.log(self.person);
CreateService.submitPerson(self.person).then(onSuccess,onError);
}
var onSuccess = function(response){
alert("User has been added succesffully");
}
var onError = function(error){
alert("Error creating person");
}
}
]);
これは可能です。はい。 mvcルートの変更にどれだけのページがリロードされるかによっては難しいかもしれません。 oc-lazy-loadも見てください。 –
@AluanHaddad okありがとう、私はページを分析して決定するでしょう。 –