みなさんこんにちは、現役エンジニアのサメハックです
未経験からWebエンジニアに転職し、
正社員として5年働いたのちフリーランスとして独立しました。
Angularの解説シリーズです。
今回はクラス名を制御する方法について学んでいきましょう!
駆け出しエンジニアや未経験の方、
また新入社員を指導する先輩社員にとっても
わかりやすいように解説していきます!
この記事を読むと・・・
- クラス名の制御ができる
※PCにnpm、nodeがインストールされている前提で記述します。
yarn等をお使いの方は読み替えてください。
環境がない人はcodesansboxを使ってね!
作りたいもの
特定の条件を満たした場合のみ、クラス名を付与する処理を作ります。
実行環境
![](https://samehack.com/wp-content/uploads/2022/07/be387e454f96459b6269c97f05c34b3e-2.jpg)
Angularのバージョンが古いと動かないことがあるよ!
うまく動かなければアップデートしてね!
うまく動かなければアップデートしてね!
クラス名を制御しよう!
![](https://samehack.com/wp-content/uploads/2022/11/student-849826_1920-1-1024x683.jpg)
クラス名を制御する構文
<div [class.クラス名]="条件式"> </div>
条件式がtrueの場合のみクラス名が付与されるよ!
実際に作ってみよう!
app.component.html
<p [class.my-class]="user == 'サメハック'">こんにちは、サメハックです!</p>
user==’サメハック’を満たす場合のみmy-classが付与されるよ!
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
})
export class AppComponent {
user: string = 'サメハック';
}
app.component.css
.my-class {
color: yellow;
background-color: black;
}
動作確認!
npm start
ng serve -o
![](https://samehack.com/wp-content/uploads/2022/11/dbf196dfcf83df5473e77e89b3aa8977.png)
として実行すると、my-classが適用されていることがわかります。
試しにuserの値を変えてみると、my-classが適用されなくなることがわかります。
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
})
export class AppComponent {
user: string = 'いぬハック';
}
![](https://samehack.com/wp-content/uploads/2022/11/0b12cfe77a746d30ccc76c9111937cc6.png)
まとめ
![](https://samehack.com/wp-content/uploads/2021/11/dfe65cc8c5d3185e7b92ade5af4cc6bb-4-1024x264.jpg)
- [class.クラス名]=”条件式”
- とすることで、クラスを制御できる
![](https://samehack.com/wp-content/uploads/2021/09/00c3d3cf1d32995d7b5414ac551d13f3.png)
満足いただけたら、1クリックなのでSNSフォローしてもらえると嬉しいです🦈