将类添加到 Angular 中的元素
Angular 4 是一个用于构建 Web 应用程序的框架。它建立在 TypeScript 之上,并且具有许多使其比 Angular 2 更强大、更灵活的特性。
使 Angular 4 更强大的特性之一是向元素添加类的概念。
在 Angular 4 中向元素添加类的最简单方法是使用带有 NgClass
指令的 HTML 属性选择器语法。
此语法可用于任何 HTML 标记,并允许你一次应用多个类,然后可以根据其他指令或样式表规则的需要应用这些类。
本文将全面介绍在 Angular 4 中向元素添加类。
在我们这样做之前,我们将检查如何使用传统的 JavaScript 分配类与如何在 Angular 中分配它们。
添加没有 Angular 4 的类
流行的 JavaScript 库 Angular 提供了一种使用 NgClass
指令执行此操作的方法。该指令允许你轻松地动态地从元素中添加和删除类。
但是,如果你不使用 Angular,那么还有其他几种方法可以使用 JavaScript 来完成此任务。
一个名为 addClass
的 jQuery 插件允许你轻松地将类添加到任何元素,只要它已使用 jQuery 进行了初始化。你还可以使用 JavaScript 中的 .setAttribute()
方法并在被操作的 DOM 节点上设置 className
属性。
使用 Angular 4 中的 ClassName
属性向元素添加类
要直接绑定到 Angular 4 中的 className
属性,我们将使用 ClassName
属性。它将类添加到任何元素,使用选择器后的括号或通过点语法 ClassName
访问。
<div
[className]="isActive ? 'active' : 'inactive'">
</div>
如果 isActive
返回 true,则添加 active
类;否则,inactive
保持不变。
使用 Angular 4 中的 NgClass
指令向元素添加类
NgClass
指令有很多用例。最常见的一种方法是在用户单击元素时向元素添加类。
NgClass
指令允许你根据特定条件向元素添加类。例如,当用户单击一个组件时,你可以将活动类添加到该元素。
NgClass
指令很有帮助,因为它允许你从 Angular 应用程序的元素中动态添加和删除类。此外,指令本身的适应性很强,可以根据输入做各种事情。
例如,假设我们想使用 NgClass
分配一个静态类。让我们讨论一下它的语法。
<div [ngClass]="'Class-Name'">/div>
NgClass
也可以同时分配多个静态类名。
<div [ngClass]="['Class-Name', 'other-class']">/div>
在 Angular 4 中向元素添加类的完整示例
HTML 代码:
<p [ngClass]="something === 'first' ? 'blue red-border' : 'blue'">
Add some text here
</p>
<p [ngClass]="something === 'first' ? 'blue red-border' : 'blue'">
Add some text here
</p>
CSS 代码:
p {
font-family: Lato;
}
.blue {
background-color: blue;
}
.red-border {
border: 2px solid red;
}
*{
color: white;
}
TypeScript 代码:
import { Component, ViewChild, OnInit, Renderer2, ElementRef, } from '@angular/core';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
name = 'Angular 4';
something = 'first';
constructor(private renderer: Renderer2) {}
}
相关文章
在 Angular 中上传文件
发布时间:2023/04/14 浏览次数:71 分类:Angular
-
本教程演示了如何在 Angular 中上传任何文件。我们还将介绍如何在文件上传时显示进度条,并在上传完成时显示文件上传完成消息。
Angular 中所有 Mat 图标的列表
发布时间:2023/04/14 浏览次数:91 分类:Angular
-
本教程演示了在哪里可以找到 Angular 中所有 Mat 图标的列表以及如何使用它们。
Angular 2 中的复选框双向数据绑定
发布时间:2023/04/14 浏览次数:139 分类:Angular
-
本教程演示了如何一键标记两个复选框。这篇有 Angular 的文章将着眼于执行复选框双向数据绑定的不同方法。
在 AngularJS 中重新加载页面
发布时间:2023/04/14 浏览次数:142 分类:Angular
-
我们可以借助 windows.location.reload 和 reload 方法在 AngularJS 中重新加载页面。
在 AngularJs 中设置 Select From Typescript 的默认选项值
发布时间:2023/04/14 浏览次数:78 分类:Angular
-
本教程提供了在 AngularJs 中从 TypeScript 中设置 HTML 标记选择的默认选项的解释性解决方案。
在 AngularJS 中启用 HTML5 模式
发布时间:2023/04/14 浏览次数:150 分类:Angular
-
本文讨论如何在 AngularJS 应用程序上启用带有深度链接的 HTML5 模式。
在 AngularJs 中加载 spinner
发布时间:2023/04/14 浏览次数:107 分类:Angular
-
我们将介绍如何在请求加载时添加加载 spinner,并在 AngularJs 中加载数据时停止加载器。
在 Angular 中显示和隐藏
发布时间:2023/04/14 浏览次数:78 分类:Angular
-
本教程演示了 Angular 中的显示和隐藏。在开发商业应用程序时,我们需要根据用户角色或条件隐藏一些数据。我们必须根据该应用程序中的条件显示相同的数据。
在 Angular 中下载文件
发布时间:2023/04/14 浏览次数:104 分类:Angular
-
本教程演示了如何在 angular 中下载文件。我们将介绍如何通过单击按钮在 Angular 中下载文件并显示一个示例。