Home Web Front-end JS Tutorial About the basic usage of built-in directives in Angular4

About the basic usage of built-in directives in Angular4

Jun 25, 2018 am 10:49 AM
angular built-in commands instruction

The following article mainly introduces you to the basic usage of built-in instructions in Angular4. The article introduces it in detail through sample code. Friends who need it can take a look below.

I have to say that instructions are one of the most powerful functions of ng. Well, you can also remove one of them. It is the most powerful function.

Preface

Everyone knows that ng has many built-in custom instructions, which prevents us from reinventing the wheel ourselves. At the same time, ng also provides the function of custom instructions, which can make our page element tags more instantiated.

In this article, we will list the usage of each built-in command separately and provide an example as a demonstration. Try to use the least and simplest description so that you can learn the basic usage of each built-in command faster and more accurately.

ngFor

Function: Like a for loop, you can repeatedly take values ​​from the array and display them.

Example:

1

2

3

4

5

6

7

8

9

// .ts

 

this.userInfo = ['张三', '李四', '王五'];

 

// .html

 

<p class="ui list" *ngFor="let username of userInfo">

 <p class="item">{{username}}</p>

</p>

Copy after login

Explanation:

His syntax is *ngFor="let username of userInfo", where userInfo is the array from which values ​​are taken, and username is the value taken out from it each time. Then the content in this tag will be executed repeatedly, and the username will be displayed through two-way binding.

ngIf

Function: Decide whether to show or hide this element based on conditions.

Example:

1

2

3

4

5

6

// .html

 

<p *ngIf="false"></p>

<p *ngIf="a > b"></p>

<p *ngIf="username == '张三'"></p>

<p *ngIf="myFunction()"></p>

Copy after login

Explanation:

  • Never displayed

  • Displayed when a is greater than b

  • Displayed when username is equal to Zhang San

  • Decide whether to display or not based on the return value of myFunction() function

ngSwitch

Function: Prevent complex conditions from causing excessive use of ngIf.

Example:

1

2

3

4

5

6

7

// .html

 

<p class="container" [ngSwitch]="myAge">

 <p *ngSwitchCase="'10'">age = 10</p>

 <p *ngSwitchCase="'20'">age = 20</p>

 <p *ngSwitchDefault="'18'">age = 18</p>

</p>

Copy after login

Explanation:

[ngSwitch] Bind to the target first, ngSwitchCase lists each possibility, and ngSwitchDefault lists the default value.

ngStyle

Function: You can use dynamic values ​​to set CSS properties for specific DOM elements.

Example:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

// .ts

backColor: string = 'red';

 

// .html

<p [style.color]="yellow">

 你好,世界

</p>

<p [style.background-color]="backColor">

 你好,世界

</p>

<p [style.font-size.px]="20">

 你好,世界

</p>

<p [ngStyle]="{color: 'white', 'background-color': 'blue', 'font-size.px': '20'}">

 你好,世界

</p>

Copy after login

Explanation:

  • Set the color directly to yellow.

  • Set the background color to backColor, and modify the value of backColor in the .ts file.

  • Set the font size. It should be noted that if you only write font-size, an error will be reported. You must add .px at the end. Of course .em .% are all acceptable.

  • The first three are to set only one. You can write multiple ones at the same time by writing [ngStyle], and use curly brackets to enclose the inner strength. It should be noted that the hyphen - is not allowed to appear in the key name of the object. If you use background-color, etc., you need to add single quotes.

ngClass

Function:Dynamicly set and change the content of a given DOM element CSS class.

Example:

1

2

3

4

5

6

7

8

9

10

11

12

13

// .scss

.bordered {

 border: 1px dashed black;

 background-color: #eee;

}

 

// .ts

isBordered: boolean = true;

  

// .html

<p [ngClass]="{bordered: isBordered}">

 是否显示边框

</p>

Copy after login

Explanation:

    Setting the style in
  • scss is equivalent to you building a class="bordered".

  • #ts has a new isBordered, which is used to determine whether to display the styles in .scss.

  • #html uses isBordered as the basis for judging whether bordered is displayed.

ngNonBindable

##Function: Tell Angular not to bind a certain part of the page.

Example:

1

2

3

4

5

.html

 

<p ngNonBindable>

 {{我不会被绑定}}

</p>

Copy after login

Explanation:

When ngNonBindable is used, the curly braces will be displayed together as a string.

Summary

In daily development, ngFor and ngIf should be used the most, so they are written first. As for ngNonBindable, I have never used it once in actual development. I just checked the information and tested it before writing it down.

The above is the entire content of this article. I hope it will be helpful to everyone's study. For more related content, please pay attention to the PHP Chinese website!

Related recommendations:

How to disable template caching in AngularJs

How to clear the browser cache in angularJs

The above is the detailed content of About the basic usage of built-in directives in Angular4. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to get items using commands in Terraria? -How to collect items in Terraria? How to get items using commands in Terraria? -How to collect items in Terraria? Mar 19, 2024 am 08:13 AM

How to get items using commands in Terraria? -How to collect items in Terraria?

How to install Angular on Ubuntu 24.04 How to install Angular on Ubuntu 24.04 Mar 23, 2024 pm 12:20 PM

How to install Angular on Ubuntu 24.04

Detailed explanation of angular learning state manager NgRx Detailed explanation of angular learning state manager NgRx May 25, 2022 am 11:01 AM

Detailed explanation of angular learning state manager NgRx

VUE3 quick start: using Vue.js instructions to switch tabs VUE3 quick start: using Vue.js instructions to switch tabs Jun 15, 2023 pm 11:45 PM

VUE3 quick start: using Vue.js instructions to switch tabs

A brief analysis of how to use monaco-editor in angular A brief analysis of how to use monaco-editor in angular Oct 17, 2022 pm 08:04 PM

A brief analysis of how to use monaco-editor in angular

An article exploring server-side rendering (SSR) in Angular An article exploring server-side rendering (SSR) in Angular Dec 27, 2022 pm 07:24 PM

An article exploring server-side rendering (SSR) in Angular

What should I do if the project is too big? How to split Angular projects reasonably? What should I do if the project is too big? How to split Angular projects reasonably? Jul 26, 2022 pm 07:18 PM

What should I do if the project is too big? How to split Angular projects reasonably?

Let's talk about how to customize the angular-datetime-picker format Let's talk about how to customize the angular-datetime-picker format Sep 08, 2022 pm 08:29 PM

Let's talk about how to customize the angular-datetime-picker format

See all articles