我的home.html頁面中有一個控制器作爲HomeController,我想在我的about.html頁面中調用相同的控制器及其內容。下面的代碼是主頁,它將顯示用戶的名字和姓氏,我想調用相同的功能,例如在關於我們頁面中調用名字和姓氏。怎麼做?截至目前,我只是複製整個並粘貼在about控制器只是將控制器名稱從HomeController更改爲AboutController。我們可以從一個html頁面調用一個控制器到angularjs中的另一個html頁面
(函數(){ '使用嚴格';
angular
.module('app')
.controller('HomeController', HomeController);
HomeController.$inject = ['UserService', '$rootScope','$scope', '$http'];
function HomeController(UserService, $rootScope,$scope, $http) {
var vm = this;
vm.user = null;
vm.allUsers = [];
vm.deleteUser = deleteUser;
initController();
function initController() {
loadCurrentUser();
loadAllUsers();
}
function loadCurrentUser() {
UserService.GetByUsername($rootScope.globals.currentUser.username)
.then(function (user) {
vm.user = user;
});
}
function loadAllUsers() {
UserService.GetAll()
.then(function (users) {
vm.allUsers = users;
});
}
function deleteUser(id) {
UserService.Delete(id)
.then(function() {
loadAllUsers();
});
}
$http.get('webservice').
then(function(response) {
$scope.user_message = response.data.data;
});
}
})();
如果我正確理解你的問題,這是可能的。請詳細說明你的問題。顯示代碼結構。 – Sangharsh
您可以使用控制器繼承。在一個基本控制器中具有通用功能,然後在其他控制器中,可以使用派生控制器範圍啓動基本範圍,以便可以從視圖訪問基本方法。 –
通過在路由器的每個狀態中指定要使用它的位置,您可以使用(不呼叫)相同的控制器。 – Faly