Users Pricing

blog

home / developersection / blogs / angularjs expressions and modules
AngularJS Expressions and Modules

AngularJS Expressions and Modules

Ravi Vishwakarma 1084 24 Jun 2024 Updated 24 Jun 2024

AngularJS Expressions are code snippets usually placed in bindings within the HTML template to bind data to the view. They can be written inside double curly braces {{ expression }} or directly in directives.

Basic Syntax: Interpolation: {{ expression }}

Example: <p>{{ 5 + 5 }}</p> would display 10.

Directives: ng-bind: Another way to bind data.

Example: <p ng-bind="message"></p>

Expressions vs JavaScript:

  • AngularJS expressions are like JavaScript expressions, but they are safe to use in HTML.
  • They do not support control flow statements like if, for, etc.
  • They can include literals, operators, and variables.

Examples:

  • Mathematical operations: {{ 1 + 1 }}
  • String concatenation: {{ "Hello " + name }}
  • Function calls: {{ myFunction() }}
  • Object access: {{ user.name }}

AngularJS Modules

AngularJS Modules are containers for different parts of an application. They help in separating the application into reusable parts and in organizing code.

Creating a Module: Use angular.module to create a new module.

Example: var app = angular.module('myApp', []);

Adding Dependencies: You can specify dependencies on other modules.

Example: var app = angular.module('myApp', ['ngRoute', 'ngResource']);

Components of a Module:

  • Controllers: Define the behavior of a particular scope.
app.controller('myCtrl', function($scope) {
    $scope.greeting = 'Hello, World!';
});
  • Services: Share data and behavior across the application.
app.service('myService', function() {
    this.sayHello = function() {
        return 'Hello!';
    };
});
  • Directives: Teach HTML new tricks by extending its functionality.
app.directive('myDirective', function() {
    return {
        template: 'This is a custom directive'
    };
});
  • Filters: Format data displayed to the user.
app.filter('capitalize', function() {
    return function(input) {
        return input.charAt(0).toUpperCase() + input.slice(1);
    };
});
  • Factories: Similar to services but can return any value.
app.factory('myFactory', function() {
    return {
        greet: function() {
            return 'Hello, World!';
        }
    };
});

Example of AngularJS Application 

<!DOCTYPE html>
<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular.min.js"></script>
    <script>
        // Define a module
        var app = angular.module('myApp', []);

        // Define a controller
        app.controller('myCtrl', function($scope) {
            $scope.message = 'Hello, AngularJS!';
            $scope.updateMessage = function(newMessage) {
                $scope.message = newMessage;
            };
        });

        // Define a service
        app.service('myService', function() {
            this.getGreeting = function() {
                return 'Hello from service!';
            };
        });

        // Define a directive
        app.directive('myDirective', function() {
            return {
                template: '<h1>Custom Directive</h1>'
            };
        });

        // Define a filter
        app.filter('reverse', function() {
            return function(input) {
                return input.split('').reverse().join('');
            };
        });
    </script>
</head>
<body ng-app="myApp">

    <div ng-controller="myCtrl">
        <p>{{ message }}</p>
        <input type="text" ng-model="message">
        <button ng-click="updateMessage('New Message!')">Update Message</button>
    </div>

    <div my-directive></div>

    <p>{{ 'AngularJS' | reverse }}</p>
</body>
</html>

Ravi Vishwakarma

Software Developer

Hi, my self Ravi Vishwakarma. I have completed my studies at SPICBB Varanasi. now I completed MCA with 76% form Veer Bahadur Singh Purvanchal University Jaunpur. SWE @ MindStick | Software Engineer | Web Developer | .Net Developer | Web Developer | Backend Engineer | .NET Core Developer