Javascript 如何访问typescript文件中的css类?
在这里,我想使用angular.js中的ngClass指令将CSS类动态添加到元素中Javascript 如何访问typescript文件中的css类?,javascript,jquery,css,angular,typescript,Javascript,Jquery,Css,Angular,Typescript,在这里,我想使用angular.js中的ngClass指令将CSS类动态添加到元素中 <p [ngClass]="addClasses()">testing content</p> boldClass和italicsClass是css文件中的两个类,这些类应根据相应布尔变量中的值应用。 但是我得到了一个错误,因为无法找到boldClass和italicsClass的名称。非常感谢您的帮助。这是添加动态类的一种方法 <p [class.boldClass]="isb
<p [ngClass]="addClasses()">testing content</p>
boldClass和italicsClass是css文件中的两个类,这些类应根据相应布尔变量中的值应用。
但是我得到了一个错误,因为无法找到boldClass和italicsClass的名称。非常感谢您的帮助。这是添加动态类的一种方法
<p [class.boldClass]="isbold"
[class.italicsClass]="isItalic">testing content </p>
测试内容
问题在于您的JSON,当您声明JSON时,它的属性不应该与“=”一起使用,请尝试使用类似于:
addClasses(){
let classes={
boldClass: this.isbold,
italicsClass: this.isItalic
};
return classes;
}
在this.isbold之后有一个挂起的“,”,还有,您有this.Italic,应该是this.istalic。尝试使用Angular的渲染器2
@ViewChild('el') element: ElementRef
constructor(private renderer: Renderer2) {
}
addClasses(classes: Array<string>){
classes.forEach(class => this.renderer.addClass(this.element.nativeElement, 'someClass'))
}
<p #el>testing content </p>
@ViewChild('el')元素:ElementRef
构造函数(专用渲染器:渲染器2){
}
addClasses(类:数组){
class.forEach(class=>this.renderer.addClass(this.element.nativeElement,'someClass'))
}
测试内容
ts:
模板:
<p [ngClass]="addClasses()">testing content </p>
你到底在干什么?您想将粗体或斜体类添加到标记中吗?在对象文本中不使用
=
,而是使用:
。因此,boldClass:例如,这个.isbold
。
@ViewChild('el') element: ElementRef
constructor(private renderer: Renderer2) {
}
addClasses(classes: Array<string>){
classes.forEach(class => this.renderer.addClass(this.element.nativeElement, 'someClass'))
}
<p #el>testing content </p>
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
isbold: boolean = false;
isItalic: boolean = true;
addClasses() {
let classes = {
boldClass: this.isbold,
italicsClass: this.isItalic
};
return classes;
}
}
<p [ngClass]="addClasses()">testing content </p>
.boldClass {
font-weight: bold;
}
.italicsClass {
font-style: italic;
}