{"id":1023,"date":"2021-02-04T05:15:54","date_gmt":"2021-02-04T05:15:54","guid":{"rendered":"https:\/\/codeinsightacademy.com\/blog\/?p=1023"},"modified":"2024-06-21T10:15:49","modified_gmt":"2024-06-21T10:15:49","slug":"angular-cheat-sheet","status":"publish","type":"post","link":"https:\/\/codeinsightacademy.com\/blog\/angular-js\/angular-cheat-sheet\/","title":{"rendered":"Angular Cheat Sheet"},"content":{"rendered":"\n<p><a href=\"https:\/\/angular.dev\/tools\/cli\/setup-local\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/angular.io\/guide\/setup-local<\/a><\/p>\n\n\n\n<p><strong>app.module.ts<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import { BrowserModule } from '@angular\/platform-browser';\nimport { NgModule } from '@angular\/core';\n\nimport { AppComponent } from '.\/app.component';\nimport { AppRoutingModule } from '.\/app-routing.module';\nimport { AddComponent } from '.\/add\/add.component';\nimport { HomeComponent } from '.\/home\/home.component';\n\nimport { FormsModule, ReactiveFormsModule } from '@angular\/forms';\n\nimport { HttpClientModule } from '@angular\/common\/http'\n\n@NgModule({\n  declarations: &#91;\n    AppComponent,\n    AddComponent,\n    HomeComponent\n  ],\n  imports: &#91;\n    BrowserModule,\n    <strong>AppRoutingModule,\n    FormsModule,\n    ReactiveFormsModule,\n    HttpClientModule<\/strong>\n  ],\n  providers: &#91;],\n  bootstrap: &#91;AppComponent]\n})\nexport class AppModule { }<\/code><\/pre>\n\n\n\n<p><strong>app-routing.module.ts<\/strong><\/p>\n\n\n\n<p>if app-routing.module.ts is not present then run this in root folder<br>ng generate module app-routing &#8211;flat &#8211;module=app<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import { NgModule } from '@angular\/core';\nimport { CommonModule } from '@angular\/common';\nimport { RouterModule, Routes } from '@angular\/router';\nimport { HomeComponent } from '.\/home\/home.component';\nimport { AddComponent } from '.\/add\/add.component';\n\nconst routes: Routes = &#91;\n  <strong>{ path: 'add', component: AddComponent },\n  { path: 'add\/:num1\/:num2', component: AddComponent },<\/strong>\n  \/\/ { path: 'sub', component: SubComponent },\n  \/\/ { path: 'mul', component: MulComponent },\n  \/\/ { path: 'div', component: DivComponent },\n  <strong>{ path: '**', component: HomeComponent },<\/strong>\n];\n\n@NgModule({\n  declarations: &#91;],\n  imports: &#91;\n    CommonModule,\n    RouterModule.forRoot(routes)\n  ],\n  exports: &#91;\n    RouterModule\n  ]\n})\nexport class AppRoutingModule { }\n<\/code><\/pre>\n\n\n\n<p><strong>app.component.html<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;a routerLink=\"\/\"  routerLinkActive=\"active\" &#91;routerLinkActiveOptions]=\"{exact: true}\"&gt;Home&lt;\/a&gt; |\n&lt;a routerLink=\"\/add\"  routerLinkActive=\"active\"&gt;Add&lt;\/a&gt;\n&lt;router-outlet&gt;&lt;\/router-outlet&gt;\n<\/code><\/pre>\n\n\n\n<p><strong>app.component.css<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.active {\n  background-color: beige;\n}\n<\/code><\/pre>\n\n\n\n<p><strong>home.component.ts<\/strong><\/p>\n\n\n\n<p>ng g c home<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import { Component, OnInit } from '@angular\/core';\nimport { FormGroup, FormControl } from '@angular\/forms'\nimport { HomeService } from '.\/home.service'\n\n@Component({\n  selector: 'app-home',\n  templateUrl: '.\/home.component.html',\n  styleUrls: &#91;'.\/home.component.css']\n})\nexport class HomeComponent implements OnInit {\n\n  fruits = &#91;\"Orange\", \"Mango\", \"Banana\", \"Apple\"];\n\n  num1: number = 0;\n  square: number = 0;\n\n  form = new FormGroup({\n    num1: new FormControl(),\n    num2: new FormControl()\n  });\n  formResult: any;\n\n  userRecords: any;\n\n  constructor(private service: HomeService) { }\n\n  ngOnInit() {\n  }\n\n  getSqr() {\n    var x = this.num1;\n    this.square = x * x;\n  }\n\n  addNum() {\n    let x = parseInt(this.form.value.num1);\n    let y = parseInt(this.form.value.num2);\n    this.formResult = x + y;\n  }\n\n  getUsers() {\n    this.service.getData().subscribe((response) =&gt; {\n      console.log(response);\n      this.userRecords = response;\n    })\n  }\n\n}\n<\/code><\/pre>\n\n\n\n<p><strong>home.component.html<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;p&gt;home works!&lt;\/p&gt;\n{{ fruits }}\n\n&lt;div *ngFor=\"let fruit of fruits\"&gt;\n  {{fruit}}\n&lt;\/div&gt;\n\n\n&lt;input type=\"text\" (keyup)=\"getSqr()\" &#91;(ngModel)]=\"num1\"\/&gt;\n&lt;div&gt;\n  Square of {{num1}} is {{square}}\n&lt;\/div&gt;\n\n\n&lt;form &#91;formGroup]=\"form\" (submit)=\"addNum()\"&gt;\n  &lt;input type=\"text\" formControlName=\"num1\"\/&gt;\n  &lt;input type=\"text\" formControlName=\"num2\"\/&gt;\n  {{ form.value | json }}\n  &lt;div&gt;\n    Result: {{ formResult }}\n  &lt;\/div&gt;\n  &lt;input type=\"submit\" value=\"Add\"\/&gt;\n&lt;\/form&gt;\n\n\n&lt;button (click)=\"getUsers()\"&gt;Get Data from Json Placeholder&lt;\/button&gt;\n&lt;div&gt;\n  {{userRecords}}\n  &lt;pre&gt;\n    {{userRecords | json}}\n  &lt;\/pre&gt;\n&lt;\/div&gt;\n<\/code><\/pre>\n\n\n\n<p><strong>home.service.ts<\/strong><\/p>\n\n\n\n<p>cd home<br>ng g s home<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import { Injectable } from '@angular\/core';\nimport { HttpClient } from '@angular\/common\/http';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class HomeService {\n\n  constructor(private http: HttpClient) { }\n\n  getData() {\n    let url = \"https:\/\/jsonplaceholder.typicode.com\/users\";\n    return this.http.get(url);\n  }\n}\n<\/code><\/pre>\n\n\n\n<p><strong>add.component.ts<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import { Component, OnInit } from '@angular\/core';\nimport { ActivatedRoute, Router } from '@angular\/router';\n\n@Component({\n  selector: 'app-add',\n  templateUrl: '.\/add.component.html',\n  styleUrls: &#91;'.\/add.component.css']\n})\nexport class AddComponent implements OnInit {\n\n  number: number;\n  param1: number;\n  param2: number;\n\n  constructor(private route: ActivatedRoute, private router: Router) {\n    console.log(this.route.snapshot.url)\n    console.log(this.route.snapshot.params)\n    this.number = parseInt(this.route.snapshot.queryParamMap.get('id'))\n    this.param1 = parseInt(this.route.snapshot.params.num1);\n    this.param2 = parseInt(this.route.snapshot.params.num2);\n  }\n\n  ngOnInit() {\n    console.log(this.number)\n    console.log(this.param1)\n    console.log(this.param2)\n\n    \/\/ setTimeout(() =&gt; {\n    \/\/   this.router.navigate(&#91;'home']);\n    \/\/ }, 3000)\n  }\n\n}\n<\/code><\/pre>\n\n\n\n<h5>my-app\\src\\app\\interceptor\\httpconfig.interceptor.ts<\/h5>\n\n\n\n<pre class=\"wp-block-code\"><code>import { Injectable } from '@angular\/core';\nimport {\n    HttpInterceptor,\n    HttpRequest,\n    HttpResponse,\n    HttpHandler,\n    HttpEvent,\n    HttpErrorResponse\n} from '@angular\/common\/http';\n\nimport { Observable, throwError } from 'rxjs';\nimport { map, catchError } from 'rxjs\/operators';\n\n@Injectable()\nexport class HttpConfigInterceptor implements HttpInterceptor {\n    intercept(request: HttpRequest&lt;any&gt;, next: HttpHandler): Observable&lt;HttpEvent&lt;any&gt;&gt; {\n        const token: any = localStorage.getItem('token');\n        \/\/ const token: string = `eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1X25hbWUiOiJhZG1pbiIsInB3ZCI6IkBkbWluIiwiaWF0IjoxNjEyNjM2OTc5fQ.ehlxu7z_1HSW4bPK902nLOAZOpHtutfkJ43lCxQnL68`;\n        if (token) {\n            request = request.clone({ headers: request.headers.set('Authorization', 'Bearer ' + token) });\n        }\n\n        if (!request.headers.has('Content-Type')) {\n            request = request.clone({ headers: request.headers.set('Content-Type', 'application\/json') });\n        }\n\n        request = request.clone({ headers: request.headers.set('Accept', 'application\/json') });\n\n        return next.handle(request).pipe(\n            map((event: HttpEvent&lt;any&gt;) =&gt; {\n                if (event instanceof HttpResponse) {\n                    console.log('event---&gt;&gt;&gt;', event);\n                }\n                return event;\n            }));\n    }\n}<\/code><\/pre>\n\n\n\n<p><strong>app.module.ts<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import { NgModule } from '@angular\/core';\nimport { BrowserModule } from '@angular\/platform-browser';\n\nimport { AppRoutingModule } from '.\/app-routing.module';\nimport { AppComponent } from '.\/app.component';\nimport { RouterModule } from '@angular\/router';\n\nimport {FormsModule, ReactiveFormsModule} from '@angular\/forms';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular\/common\/http'\nimport { HttpConfigInterceptor } from '.\/interceptor\/httpconfig.interceptor';\n\n\n@NgModule({\n  declarations: &#91;\n    AppComponent,\n  ],\n  imports: &#91;\n    HttpClientModule\n  ],\n  providers: &#91;\n    { provide: HTTP_INTERCEPTORS, useClass: HttpConfigInterceptor, multi: true }\n  ],\n  bootstrap: &#91;AppComponent]\n\n})\nexport class AppModule { }\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>https:\/\/angular.io\/guide\/setup-local app.module.ts app-routing.module.ts if app-routing.module.ts is not present then run this in root folderng generate module app-routing &#8211;flat &#8211;module=app app.component.html app.component.css home.component.ts ng g c home home.component.html home.service.ts cd homeng g s home add.component.ts my-app\\src\\app\\interceptor\\httpconfig.interceptor.ts app.module.ts<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6,18],"tags":[30],"_links":{"self":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/1023"}],"collection":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/comments?post=1023"}],"version-history":[{"count":11,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/1023\/revisions"}],"predecessor-version":[{"id":2723,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/1023\/revisions\/2723"}],"wp:attachment":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/media?parent=1023"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/categories?post=1023"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/tags?post=1023"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}