在Angular(以及一般情况下)中,我非常喜欢将视图逻辑保留在我的控制器之外,而且我认为没有发生这种情况的地方是CSS类和ng-class的使用。
对于ng-class你可能不太熟悉,它是一个特殊的指令,允许绑定表达式并将它们作为元素的类放置。ng-class的一个非常常见的用途是这样的:
<p ng-class="{{active}}">Class applied!</p><script> function MySimpleCtrl() { $scope.active = 'active'; ...
所以在控制器中我们设置应该显示的特定类; 所以假设我们有一个类“inactive.”——我们简单地将$scope.active 变量设置为“inactive”,我们最后在视图中设置了类。
但ng-class甚至比那更好用:
ng-class接受三种不同类型的值:
1、字符串值(类的名称)
2、字符串数组(要应用的类)
3、要评估的对象+表达式
其中选项3的语法看起来像这样
ng-class="{object of key/value pairs}[expression to evaluate]"
基本上,ng-class计算表达式(在方括号中),然后使用它作为对象的键;键相关的值是应用的类。
这允许我们将$scope.active值转换为真正的布尔值(这正是我们使用它的方式)——控制器中没有视图逻辑,控制器更容易测试并且可以重用。
这是一个简单的例子:
<p ng-class="{true: 'active', false: 'inactive'}[isActive]"> Class applied !</p><script> function MySimpleCtrl() { $scope.isActive = true;
如果您正在使用某种条件表达式(即切换),那么您可以使用另一种非常相似的语法:
ng-class="{'selected': isSelected, 'blue': isBlue}"
此处,如果selected为真,则将应用选定的类,blue类也一样。Angular将应用尽可能是真实的,因此您可以将类设置为selected和blue。
Atas ialah kandungan terperinci 如何保持CSS类不受Angular控制器的影响. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Goofonts adalah projek sampingan yang ditandatangani oleh isteri pemaju dan suami pereka, kedua-duanya peminat besar tipografi. Kami telah menandakan Google

Pavithra Kodmad meminta orang ramai untuk membuat cadangan mengenai apa yang mereka fikir adalah beberapa artikel yang paling abadi mengenai pembangunan web yang telah mengubahnya

Dua artikel diterbitkan pada hari yang sama:

Belajar bagaimana untuk membina API GraphQL boleh menjadi agak mencabar. Tetapi anda boleh belajar cara menggunakan API GraphQL dalam 10 minit! Dan ia berlaku saya ' ve mendapat yang sempurna

Apabila komponen tinggal di persekitaran di mana pertanyaan data memisahkannya tinggal berdekatan, terdapat garis langsung yang cukup antara komponen visual dan

Di sini ' s beberapa CSS Trickery dari Yuanchuan. Terdapat CSS Property Offset-Path. Suatu ketika dahulu, ia dipanggil gerakan-jalan dan kemudian ia dinamakan semula. I

Miriam Suzanne menerangkan dalam video pemaju Mozilla mengenai subjek.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Dreamweaver Mac版
Alat pembangunan web visual

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

VSCode Windows 64-bit Muat Turun
Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).