Hello folks! welcome back to a new edition of our tutorial on AngularJS. In this tutorial guide, we will be studying about AngularJS Modules.
AngularJS supports the modular approach. Modules are used to separate logic such as services, controllers, applications, etc. from the code and keep the code neat. We define modules in separate js files and name them as per the module.js file.
AngularJS supports the modular approach. Modules are used to separate logic such as services, controllers, applications, etc. from the code and keep the code neat. We define modules in separate js files and name them as per the module.js file.
Types of AngularJS Modules
AngularJS has two types of modules which we are going to create in this tutorial -
- Application Module - Used to initialize an application with controller(s).
- Controller Module - Used to define the controller.
Application Module
Here is a file named mainApp.js containing the following code -
var mainApp = angular.module("mainApp", []);
Here, we declared an application mainApp module using angular.module function and pass an empty array to it. This array usually contains dependent modules.
Controller Module
Create a file student controller.js.
mainApp.controller("studentController", function($scope) { $scope.student = { firstName: "Kennedy", lastName: "Nkpara", fees:500, subjects:[ {name:'Physics',marks:70}, {name:'Chemistry',marks:80}, {name:'Math',marks:65}, {name:'English',marks:75}, {name:'Biology',marks:67} ], fullName: function() { var studentObject; studentObject = $scope.student; return studentObject.firstName + " " + studentObject.lastName; } }; });
READ: AngularJS | HTML DOM
We declared a controller studentController module using mainApp.controller function.
Use Modules
<div ng-app = "mainApp" ng-controller = "studentController"> ... <script src = "mainApp.js"></script> <script src = "studentController.js"></script> </div>
Here, we use application module via ng-app directive, and controller using ng-controller directive. We imported the mainApp.js and studentController.js in the main HTML page.
Example
The following example below illustrates the use of all the above mentioned modules -
Create a file testAngular.html.
Create a file testAngular.html.
<html> <head> <title>Angular JS Modules</title> <script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script> <script src = "/angularjs/src/module/mainApp.js"></script> <script src = "/angularjs/src/module/studentController.js"></script> <style> table, th , td { border: 1px solid grey; border-collapse: collapse; padding: 5px; } table tr:nth-child(odd) { background-color: #f2f2f2; } table tr:nth-child(even) { background-color: #ffffff; } </style> </head> <body> <h2>AngularJS Sample Application</h2> <div ng-app = "mainApp" ng-controller = "studentController"> <table border = "0"> <tr> <td>Enter first name:</td> <td><input type = "text" ng-model = "student.firstName"></td> </tr> <tr> <td>Enter last name: </td> <td><input type = "text" ng-model = "student.lastName"></td> </tr> <tr> <td>Name: </td> <td>{{student.fullName()}}</td> </tr> <tr> <td>Subject:</td> <td> <table> <tr> <th>Name</th> <th>Marks</th> </tr> <tr ng-repeat = "subject in student.subjects"> <td>{{ subject.name }}</td> <td>{{ subject.marks }}</td> </tr> </table> </td> </tr> </table> </div> </body> </html>
mainApp.js
var mainApp = angular.module("mainApp", []);
studentController.js
mainApp.controller("studentController", function($scope) { $scope.student = { firstName: "Kennedy", lastName: "Nkpara", fees:1000, subjects:[ {name:'Physics',marks:70}, {name:'Chemistry',marks:80}, {name:'Math',marks:65}, {name:'English',marks:75}, {name:'Biology',marks:67} ], fullName: function() { var studentObject; studentObject = $scope.student; return studentObject.firstName + " " + studentObject.lastName; } }; });
Output
Open the file testAngularJS.html in any web browser to see the result -
AngularJS Sample Application
Enter first name: | |||||||||||||
Enter last name: | |||||||||||||
Name: | Kennedy Nkpara | ||||||||||||
Subject: |
|
READ: AngularJS | Tables
Alright guys! This is where we are going to be rounding up for this tutorial. In our next tutorial, we are going to be studying about AngularJS Forms.
Feel free to ask your questions where necessary and we will attend to them as soon as possible. If this tutorial was helpful to you, you can use the share button to share this tutorial.
Follow us on our various social media platforms to stay updated with our latest tutorials. You can also subscribe to our newsletter in order to get our tutorials delivered directly to your emails.
Thanks for reading and bye for now.
Feel free to ask your questions where necessary and we will attend to them as soon as possible. If this tutorial was helpful to you, you can use the share button to share this tutorial.
Follow us on our various social media platforms to stay updated with our latest tutorials. You can also subscribe to our newsletter in order to get our tutorials delivered directly to your emails.
Thanks for reading and bye for now.