Skip to main content

Binding 101 in Angular

Template = UI HTML   
Component = TS Script

Access HTML element (DOM object) in typescript (Same component)
HTML Element -> Component typescript (One Way)
1. HTML Bind -> Declare variable element using '#'
2. Typescript Bind -> Declare @ViewChild(< Variable in html>) <variable in TS>: ElementRef;

----------------------------------------------------------------------------------------------
Access Typescript variable in HTML (Same component)
typescript -> HTML Element (One Way)
1. HTML Bind -> using interpolation {{variable in TS}} (display purpose)
Direct use the varible name to get the value
2. Typescript Bind -> Declare variable

----------------------------------------------------------------------------------------------
Access HTML input value in typescript and vice verca (Same Component)
Component typescript <-> HTML Input (Two Way)
1. HTML Bind -> Assign [(ngModel)] = variable in TS
2. Typescript Bind -> Declare Variable

------------------------------------------------------------------------------------------------
Assign HTML Attribute using Typescript variable (HTML attribute binding)
Component typescript -> HTML Input (One Way)
1. HTML Bind -> Assign [Name HTML attribute] = variable in TS
2. Typescript Bind -> Declare Variable

-------------------------------------------------------------------------------------------------
Access DOM element in typescript (Event driven)
HTML Elment -> Component typescript (One Way)
1. HTML Bind -> Assign (Name HTML event) = Function Name in TS($event)
2. Typescript Bind -> Declare Function definition

-------------------------------------------------------------------------------------------------
Access HTML element on another HTML element (DOM Object)
HTML Elment -> HTML Elment
1. HTML Bind -> Using '#' to create referencing the DOM object HTMLInputElement

-------------------------------------------------------------------------------------------------
Access component variable on another component using attribute (create HTML attribute aka custom directive for others to access)
HTML element(1st component) -> TS variable (2nd component) (one way)
1. HTML Bind(1st component) -> Use [selector-input] = varibale in TS (1st component)
2. Typescript Bind(2nd component) -> create @Directive  selector: '[selector-input]'
@Input('selector-input') dataUrl:string;

-------------------------------------------------------------------------------------------------
Accces HTML element in typescript (using Directive)
TS variable -> HTML element
1. HTML Bind -> Place selector-input as attribute inside elment
2. Typescript Bind -> create @Directive  selector: '[selector-input]'
  access the element using ElementRef

-------------------------------------------------------------------------------------------------
Using component inside another template  
1. HTML Bind -> Place the selector component inside template

Comments

Popular posts from this blog

Flash Tool Error Codes -MTK Chipset

Complete List of SP Flash Tool Error Codes and their Meanings and Solutions MTK Chipset. . How to Fix SP Flash Tool Errors (BROM Error Codes): SP Flash Tool Failed to enumerate COM Port This error clearly means that the Flash Tool has issues finding the COM port on which your device is connected. Solution: Connect your watch to other Port and make sure you have USB Drivers installed. Open “Device Manager” and find the COM Port of the device you connected. Once found, open Flash Tool, click on Options -> COM Port -> Select the COM Port on which you have connected your device. Device automatically disconnects during flashing Meaning: Device disconnects as soon as the flashing process begins, interrupting the process. Solution: Try a different USB Cord, USB Port & PC Hold the Volume down or up button while connecting the device to PC for flashing SP Flash Tool remains at 0% Solution: Install necessary MediaTek VCOM drivers on PC. Use the latest version of S...

Reseting Angular Package

Updating Angular CLI If you're using Angular CLI  1.0.0-beta.28  or less, you need to uninstall  angular-cli  package. It should be done due to changing of package's name and scope from  angular-cli  to  @angular/cli : npm uninstall -g angular-cli npm uninstall --save-dev angular-cli To update Angular CLI to a new version, you must update both the global package and your project's local package. Global package: npm uninstall -g @angular/cli npm cache clean # if npm version is > 5 then use `npm cache verify` to avoid errors (or to avoid using --force) npm install -g @angular/cli@latest Local project package: rm -rf node_modules dist # use rmdir /S/Q node_modules dist in Windows Command Prompt; use rm -r -fo node_modules,dist in Windows PowerShell npm install --save-dev @angular/cli@latest npm install Sources: https://github.com/angular/angular-cli#updating-angular-cli