iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Angular中的结构指令模式及使用详解
  • 875
分享到

Angular中的结构指令模式及使用详解

2024-04-02 19:04:59 875人浏览 安东尼
摘要

目录你将学到什么angular 结构指令是什么?Angular 结构指令是怎么工作的?结构指令的例子怎么使用 *ngIf 指令怎么使用 *ngFor 指令怎么使用 *ngSwitch

你将学到什么

在 Angular 中,有两种类型的指令。属性指令修改 DOM 元素的外观或者行为。结构指令添加或者移除 DOM 元素。

结构指令是 Angular 中最强大的特性之一,然而它们却频繁被误解。

如果你对学习 结构指令 感兴趣,那么现在我们就来接着阅读,并了解它们是什么,它们有什么用以及如何在项目中使用它们。

在本文中,你将学到关于 Angular 结构指令模式的知识点。你会知道它们是什么并且怎么去使用它们。

学完本文,你将更好理解这些指令并在实际项目中使用它们。

Angular 结构指令是什么?

Angular 结构指令是能够更改 DOM 结构的指令。这些指令可以添加、移除或者替换元素。结构指令在其名字之前都有 * 符号。

在 Angular 中,有三种标准的结构化指令。

  • *ngIf - 根据表达式返回的布尔值,有条件地包含一个模版(即条件渲染模版)
  • *ngFor - 遍历数组
  • *ngSwitch - 渲染每个匹配的是图

下面?是一个结构化指令的例子。语法长这样:

 <element ng-if="Condition"></element>

条件语句必须是 true 或者 false。

<div *ngIf="worker" class="name">{{worker.name}}</div>

Angular 生成一个 <ng-template> 的元素,然后应用 *ngIf 指令。这会将其转换为方括号 [] 中的属性绑定,比如 [ngIf]。<div> 的其余部分,包含类名,插入到 <ng-template> 里。

比如:

<ng-template [ngIf]="worker">
  <div class="name">{{worker.name}}</div>
</ng-template>

Angular 结构指令是怎么工作的?

要使用结构指令,我们需要在 html 模版中添加一个带有指令的元素。然后根据我们在指令中设置的条件或者表达式添加、删除或者替换元素。

结构指令的例子

我们添加些简单的 HTML 代码。

app.component.html 文件内容如下:

<div style="text-align:center">
  <h1>
    Welcome 
  </h1>
</div>
<h2> <app-illustrations></app-illustrations></h2>

怎么使用 *ngIf 指令

我们根据条件来使用 *ngIf 来确定展示或者移除一个元素。ngIf 跟 if-else 很类似。

当表达式是 false 的时候,*ngIf 指令移除 HTML 元素。当为 true 时候,元素的副本会添加到 DOM 中。

完整的*ngIf 代码如下:

<h1>
	<button (click)="toggleOn =!toggleOn">ng-if illustration</button>
  </h1>
  <div *ngIf="!toggleOn">
  <h2>Hello </h2>
  <p>Good morning to you,click the button to view</p>
  </div>
  <hr>
  <p>Today is Monday and this is a dummy text element to make you feel better</p>
  <p>Understanding the ngIf directive with the else clause</p>

怎么使用 *ngFor 指令

我们使用 *ngFor 指令来遍历数组。比如:

<ul>
    <li *ngFor="let wok of workers">{{ wok }}</li>
</ul>

我们的组件 typescript 文件:

import { Component, OnInit } from '@angular/core';
@Component({
  selector: 'app-illustrations',
  templateUrl: './illustrations.component.html',
  styleUrls: ['./illustrations.component.CSS']
})
export class IllustrationsComponent implements OnInit {
  workers: any = [
    'worker 1',
    'worker 2',
    'worker 3',
    'worker 4',
    'worker 5',
  ]
  constructor() { }
  ngOnInit(): void {
  }
}

怎么使用 *ngSwitch 指令

译者加:这个指令实际开发很有用

我们使用 ngSwitch 来根据不同条件声明来决定渲染哪个元素。*ngSwitch 指令很像我们使用的 switch 语句。比如:

<div [ngSwitch]="Myshopping">
  <p *ngSwitchCase="'cups'">cups</p>
  <p *ngSwitchCase="'veg'">Vegetables</p>
  <p *ngSwitchCase="'clothes'">Trousers</p>
  <p *ngSwitchDefault>My Shopping</p>
</div>

在 typescript 中:

Myshopping: string = '';

我们有一个 MyShopping 变量,它有一个默认值,用于在模块中渲染满足条件的特定元素。

当条件值是 true 的时候,相关的元素就会被渲染到 DOM 中,其余的元素将被忽略。如果没有元素匹配,则渲染 *ngSwitchDefault 的元素到 DOM 中。

Angular 中我们什么时候需要用结构指令呢?

如果你想在 DOM 中添加或者移除一个元素的时候,你就应该使用结构指令。 当然,我们还可以使用它们来更改元素 CSS 样式,或者添加事件监听器。甚至可以使用它们来创建一个之前不存在的新的元素。

最好的规则是:当我们正在考虑操作 DOM 的时候,那么是时候使用结构指令了。

总结

结构指令是 Angular 中很重要的一部分,我们可以通过多种方式使用它们。

希望通过本文,读者能更好理解怎么去使用这些指令和什么时候去使用这些模式。

本文为译文,采用意译的形式。原文地址:Angular Structural Directive Patterns – What They Are and How to Use Them

以上就是Angular中的结构指令模式及使用详解的详细内容,更多关于Angular结构指令模式的资料请关注编程网其它相关文章!

--结束END--

本文标题: Angular中的结构指令模式及使用详解

本文链接: https://www.lsjlt.com/news/165722.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Angular中的结构指令模式及使用详解
    目录你将学到什么Angular 结构指令是什么?Angular 结构指令是怎么工作的?结构指令的例子怎么使用 *ngIf 指令怎么使用 *ngFor 指令怎么使用 *ngSwitch...
    99+
    2024-04-02
  • 详解Angular结构型指令模块和样式
    目录一,结构型指令二,模块Module写一个forRoot()三,风格定义使用ngStyle在拖拽的时候调整顺序一,结构型指令 *是一个语法糖,<a *ngIf="user.l...
    99+
    2024-04-02
  • Angular的结构指令如何使用
    这篇文章主要介绍“Angular的结构指令如何使用”,在日常操作中,相信很多人在Angular的结构指令如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Angular的...
    99+
    2024-04-02
  • Angular中结构型指令、模块和样式的示例分析
    这篇文章给大家分享的是有关Angular中结构型指令、模块和样式的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一,结构型指令*是一个语法糖,<a *ngIf="user.login&qu...
    99+
    2023-06-06
  • Angular结构型指令模块和样式的示例分析
    这篇文章主要介绍了Angular结构型指令模块和样式的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一,结构型指令*是一个语法糖,<a *ngIf="...
    99+
    2023-06-15
  • Java结构型模式中的组合模式详解
    目录一.介绍二.UML类图1.透明方式2.安全方式三.具体代码四.使用场景五.优点一.介绍 组合模式(Composite Pattern)属于结构型模式。组合模式又叫作部分整体模式,...
    99+
    2023-02-16
    Java结构型模式 Java组合模式
  • 浅析Angular中的自定义结构型/属性型指令
    Angular指令分为三种,组件(带模板指令)、结构型指令(改变宿主文档结构)、属性型指令(改变宿主行为),下面主要介绍自定义结构型指令和自定义属性型指令。一、自定义结构型指令一个元素上只能放一个结构型指令,结构型指令的书写形式为*指令名,...
    99+
    2023-05-14
    Angular
  • ASP.NET MVC模式中应用程序结构详解
    目录一、App_Data二、App_Start三、Content四、Controllers五、font六、Models七、Scripts八、Views九、Web.config1、根目...
    99+
    2024-04-02
  • Angular的FormArray和模态框结合使用实例详解
    目录业务场景表单列表表单详情【模态框】原错误代码思路所以正确的做法是啥??总结业务场景 使用FormArray制作动态表单。每创建一个表单,页面就新增一个input显示表单填写的标题...
    99+
    2022-11-13
    Angular FormArray模态框 Angular FormArray
  • Java 中组合模型之对象结构模式的详解
    Java 中组合模型之对象结构模式的详解一、意图 将对象组合成树形结构以表示”部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。 二、适用性你想表示对象的部分-整体层次结构你希望用户忽略组合对象与单个对...
    99+
    2023-05-31
    java 组合模型 ava
  • Java结构型设计模式中代理模式示例详解
    目录代理模式分类主要角色作用静态代理与动态代理的区别静态代理的基本使用创建抽象主题创建真实主题创建代理主题客户端调用JDK动态代理的基本使用创建抽象主题创建真实主题创建代理主题客户端...
    99+
    2024-04-02
  • 详解Vue自定义指令及使用
    目录一、什么是指令vue 中常用的一些内置 v- 指令v-if 和 v-show 的对比二、自定义指令的钩子函数三、全局指令四、局部指令五、带参数的自定义指令六、函数简写七、应用实例...
    99+
    2024-04-02
  • Angular模板中ng-template和ng-container指令的用法
    这篇文章主要讲解了“Angular模板中ng-template和ng-container指令的用法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Angula...
    99+
    2024-04-02
  • Java结构型设计模式中建造者模式示例详解
    目录建造者模式概述角色优缺点应用场景基本使用创建产品类创建建造者类使用链式写法创建产品类与建造者类使用建造者模式 概述 建造者模式(Builder Pattern)属于创建型模式。 ...
    99+
    2024-04-02
  • Vue中指令v-bind动态绑定及与v-for结合使用详解
    目录前言:一、 v-bind动态绑定class1. v-bind动态绑定class(对象语法)2. v-bind动态绑定class(数组用法)3.v-bind动态绑定sty...
    99+
    2024-04-02
  • 如何理解Angular中的指令和管道以及服务
    这篇文章将为大家详细讲解有关如何理解Angular中的指令和管道以及服务,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1. 指令 Directive指令是 ...
    99+
    2024-04-02
  • Vue中的常用指令及用法总结
    首先来聊聊Vue框架,Vue是一套用于构建用户界面的渐进式的JavaScript框架,对于初学者来说是非常友好的 , Vue的虚拟Dom , 数据双向绑定 , 都使开发者可以快速上手...
    99+
    2024-04-02
  • Java结构性设计模式中的装饰器模式介绍使用
    目录装饰器模式概述实现原理主要角色应用场景优缺点装饰器模式的基本使用创建抽象组件具体组件抽象装饰器具体装饰器客户端调用装饰器模式 概述 装饰器模式(Decorator Pattern...
    99+
    2024-04-02
  • 详解C语言中结构体的使用
    目录结构体的声明结构体成员的类型结构体成员的访问结构体的声明 结构体的定义:结构体是一些值的集合,这些值称为成员变量,结构体的每个成员可以是不同类型的变量。 举例: //定义结构体类...
    99+
    2024-04-02
  • Git工作流模式及命令的使用讲解
    目录Git的工作方式集中式工作流功能分支工作流Gitflow工作流维护分支工作流程Forking工作流Pull RequestGit的工作方式 分为集中式工作流、功能分支工作流、Gi...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作