Skip to main content

Angular Introduction

Start Angular Application: There are two types of angular , Angular Js & Angular CLI,
We are going to dive in to the Angular CLI:

Welcome to Angular! Angular helps you build modern applications for the web, mobile, or desktop.

Before you begin, make sure your development environment includes Node.js® and an npm package manager.

1 - Node.js : Angular requires Node.js version 8.x or 10.x.
            To check your node js version use node -v
2 -  npm package managerAngular, the Angular CLI, and Angular apps depend on features and functionality provided by libraries that are available as npm packages

Install The latest Version of the Node as well as npm:

sudo apt-get install curl python-software-properties
curl -sL https://deb.nodesource.com/setup_11.x | sudo -E bash -

sudo apt-get install nodejs

Step 1: Install the Angular CLI: Install the Angular CLI globally.
npm install -g @angular/cli
Step 2: Create a workspace and initial application:
ng new my-app
Step 3 : Serve the Application :
cd my-app ng serve --open
The --open (or just -o) option automatically opens your browser to http://localhost:4200/.

Run the Commans with sudo to avoid the permission issue.


  1. Angular has moduler approach, Every angular Application must have atleast one module, and modules have the own components , services, css etc, one frontend page must have atleast one component, it may have multiple components like headers,navigationos,footers etc,
  2. Each component must have the html and a class which have all the login inside here, It has all the view page logic ,to display with in the view.
  3. Modules also have the services class, which have the business logic like models in MVC,
  4. Package.json : It has whole application dependency, and the commands to start the Application, 
  5. src/main.ts : It has the entry point of the application like, index.php
  6. How It works: When we hit the ng serve command it comes to the main.ts file and load the modules which is listed here..
---------------------------------------- app.module.ts -------------------------------------------------------
@NgModule({
  declarations: [
    AppComponent,
    TestComponent
  ],
  imports: [
    BrowserModule,
    AppRoutingModule,
    FrontModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

/**
* NgModule Declarion :
* declaration : Here we declare the only components|pipe|directives, belongs to compiler
* imports : Here we declare the only modules
* providers : declare service here, belongs to injector
* bootstrap : define booting process i.e which would be the call first
*/
NOTE: If we declare a component in one ts file then we can't declare it
any othe ts file it will through the error,

---------------------------------------- end app.module.ts --------------------------------------------------
Commands:
ng generate module front
ng generate component front/latest_news
ng generate class front/topmenu/topmenu

ng generate service topmenu

When we create module and add it in imports array within the app.module.ts, Now you can create as many components as you want and you have to declare it only on our own modules declarations array,

If you would like to include the modules component in main app.component.html , then you have to export the component in  our module file in our case, like we want to include the latest-news & top menus component in front.module.ts

front.module.ts:

@NgModule({
declarations: [LatestNewsComponent, TopmenuComponent],
imports: [CommonModule,HttpClientModule],
exports:[LatestNewsComponent,TopmenuComponent],
})
app.component.html:

<h2><app-topmenu></app-topmenu></h2>
<h2><app-latest-news></app-latest-news></h2>

Comments

Popular posts from this blog

How to span column of custom table in Drupal

If you want to span the column of custom drupal table like below image, Follow the below code to make the header of the table , <?php $header = array('S.N','District', array('data' => '<div class ="house">Household </div><br><span>Rural</span> <p>Urban</p>','colspan' => 2), array('data' => '<div class ="house">Members</div> <br><span>Rural</span> <p>Urban</p>','colspan' => 2), 'Duplicate/Failed Registration', array('data' => '<div class ="house">Pending De duplication </div><br><span>Rural</span> <p>Urban</p>','colspan' => 2), 'Non Un-organised Workers', 'SSID Generated', 'No. of Card Personlised', ); $rows[] = arra...

Drupal 8 : Link actions,Link menus,Link Tasks,Routings

Drupal 8 : Link actions,Link menus,Link Tasks,Routings Link actions Local actions have also been moved out of the hook_menu() system in Drupal 8 .Use actions to define local operations such as adding new items to an administrative list (menus, contact categories, etc). Local actions are defined in a YAML format, named after the module they are defined by. Such as menu_ui.links.action.yml for this example from menu_ui module: menu_ui.link_add:   route_name: menu_ui.link_add   title: 'Add link'   appears_on:     - menu_ui.menu_edit Here, menu_ui.link_add: It is the Unique name of the link action Most likely start with module name, route_name : Name of the route it means when click the link it redirect to this route, appears_on :  An array of route names for this action to be display on. Now how to know the Route name of any internal/external admin pages like below, By through the drupal console we achieve it, drupal debug:router...

Cache In Drupal

Drupal 8 core caching modules: The Internal Page Cache module: this caches pages for anonymous users in the database. Pages requested by anonymous users are stored the first time they are requested and then are reused for future visitors. The Internal Dynamic Page Cache module: This is a key feature that Drupal 7 did not have. Unlike the Internal Page module, the Dynamic Page module aims to speed up the site for both anonymous and logged-in users. How Cache Works in Drupal: There are two modules available in the drupal core 1 - Internal page cache: The Internal Page Cache module caches pages for anonymous users in the database. Pages requested by anonymous users are stored the first time they are requested and then are reused. Configuring the internal page cache :   From the performance page we can set the maximum time how long browsers and proxies may cache pages based on the Cache-Control header. 2 - Internal dynamic page cache: Drupal 8 provides the Dynamic Page Cache m...